@charset "utf-8";
body{
	color:#2a2a2a;
}
.renewal-2019-top #wrapper > header {
	margin-top: 90px;
}
.user_form ul li .ttl .hisu2 {
    color: #fa5555;
    vertical-align: middle;
    display: inline-block;
    line-height: 1.1;
    position: relative;
    top: .1em;
    left: .3em;
}
.pc-nav-btns{
	position:fixed;
	width:100%;
	top:0;
	right:0;
	z-index:10000;
    background: #fff;
    padding: 25px 0px;
    height: 97px;
    box-sizing: border-box;
}
.pc-nav-btns ul {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
}
.pc-nav-btns ul li{
	float:right;
	width:50%;
	box-sizing:border-box;
	padding:0 5px;
	max-width:250px;
    text-align:center;
}
.pc-nav-btns ul li.pc_header_logo {
    float: left;
    width: 18%;
    margin-left: 0px;
    top: 50%;
    transform: translateY(-50%);
    position: absolute;
}
.pc-nav-btns ul li.start{
    width: 210px;
}
.pc-nav-btns ul li.login{
    width: 185px;
}
.pc-nav-btns ul li img{
    max-width: 100%;
}
.pc-nav-btns ul li a{
    color: #fff;
    display: block;
    box-sizing: border-box;
    line-height: 1em;
}
.pc-nav-btns ul li a:hover{
    opacity: 0.7;
    -webkit-transition: all .4s;
    transition: all .4s;
}
.pc-nav-btns ul li a img:hover{
    opacity: 1;
}
.pc-nav-btns ul li.start a{
    background: #ea596d url(../images/common/arrow_right_white.png) right 10px center no-repeat;
    padding: 7px 0px;
    border-radius: 50px;
    letter-spacing: 0px;
    border: 1px solid #ea596d;
}
.pc-nav-btns ul li.login a{
    background: #54c5c1 url(../images/common/arrow_right_white.png) right 10px center no-repeat;
    padding: 7px 0px;
    border-radius: 50px;
    letter-spacing: 0px;
    color: #fff;
    border: 1px solid #54c5c1;
}
.pc-nav-btns ul li.contact a{
    background: #a68b62;
    padding: 7px 0px;
    border-radius: 50px;
    letter-spacing: 0px;
    color: #fff;
    border: 1px solid #a68b62;
}
.pc-nav-btns ul li.contact a:before{
    content: "";
    display: inline-block;
    width: 21px;
    height: 23px;
    vertical-align: middle;
    margin:0 10px 0 0;
    background: url(../images/top/2022/ico-raku.png) center center no-repeat;
    background-size: contain;
}
.top_2022 .pc-nav-btns ul li a{
    padding:15px 0;
}
.top_2022 .pc-nav-btns ul li.contact a{
    padding:11px 0;
}
.nav-btns{
	position:fixed;
	width:100%;
	top:0;
	right:0;
	z-index:10000;
}
.nav-btns ul {
    width: 100%;
    max-width: 1180px;
    max-width: 1550px;
    margin: 0 auto;
}
.nav-btns ul li{
	float:right;
	width:50%;
	box-sizing:border-box;
	padding:0 10px;
	max-width:250px;
}
.top_2022 .nav-btns ul {
    max-width: 735px;
}
.top_2022 .nav-btns ul li{
    width:30%;
    font-size: 2rem;
}
.top_2022 .nav-btns ul li.start{
    width:35%;
}
.top_2022 .nav-btns ul li.contact{
    width:35%;
}
.nav-btns ul li a{
	color:#fff;
	display:block;
	box-sizing:border-box;
	padding:18px 15px;
}
.nav-btns ul li.start a{
	background:#ec576b;
}
.nav-btns ul li.login a{
    background:#4ec5c1;
}
.nav-btns ul li.contact a{
    background:#a68b62;
}
#wrapper header h1,
#wrapper header p.chapter,
.letter-box .logo{
    color: #fff;
    /*position: relative;
    left: -268px;*/
	max-width: 1080px;
	margin: 0 auto;
	text-align:left;
	box-sizing:border-box;
	padding: 10px 2.5%;
	font-size: 12px;
}
.letter-box .fL h2,
.letter-box .fL p{
	margin-bottom:7px;
}
.letter-box .fL p.sp-btn a:hover{
	text-decoration:none;
}
.letter-box .inner .fR .bxwrapper,
.letter-box .inner .fR .bx-viewport{
	height: 425px !important;
}
.newdesign .search-box {
	margin-top: 40px!important;
}
.newdesign .search-box dt {
    background: url(../images/faq/search_01.png) top left no-repeat!important;
    width: 267px!important;
    /*left: 100px!important;*/
    left: 40px!important;
}
.newdesign .search-box input[type='text']{
	/*width:450px;*/
    width:80%;
}
.newdesign .search-box input[type='submit'] {
	background:#948068 url("../images/faq/search_02.png") center center no-repeat
}
.newdesign .wp-pagenavi{
    padding-top: 30px;
    width: 96%;
}
.newdesign .wp-pagenavi a.previouspostslink,
.newdesign .wp-pagenavi a.nextpostslink{
	background: none;
    border: none!important;
    color: #000;
    width: 15px;
}
.newdesign .wp-pagenavi a.previouspostslink:hover,
.newdesign .wp-pagenavi a.nextpostslink:hover{
	background: none;
    border: none!important;
    color: #000;
}

.newdesign .wp-pagenavi a,
.newdesign .wp-pagenavi span{
    background: none;
    color: #000;
    border: none!important;
    width: 30px;
	height: 30px;
    font-weight: bold!important;
}
.newdesign .wp-pagenavi a:hover,
.newdesign .wp-pagenavi span.current{
	background-color: #3e2918;
    color: #fff;
    width: 30px;
    border-radius: 35px;
    height: 30px;
    line-height: 31px;
}


.newdesign  #page-nav{
	background: #fff!important;
    padding-top: 10px!important;
    padding-bottom: 50px!important;
    margin-bottom: 10px!important;
}
.newdesign  #page-nav li.prev{
	background: url(../images/nav/ico-prev.jpg) no-repeat left center!important;
}
.newdesign  #page-nav li.next{
	background: url(../images/nav/ico-next.jpg) no-repeat right center!important;
}
.newdesign  #page-nav li.prev:before,
.newdesign  #page-nav li.next:before{
	background:none!important;
}
.newdesign  #page-nav li.prev a{
    padding: 0px!important;
    padding-left: 30px!important;
	padding-right: 20px!important;
}
.newdesign  #page-nav li.next a{
    padding: 0px!important;
    padding-right: 30px!important;
	padding-left: 20px!important;
}
.newdesign  #page-nav li.back {
    width: 260px!important;
}
.newdesign  #page-nav li.back a{
    color: #6b4e2c!important;
    border-color: #6b4e2c!important;
}
.newdesign  #page-nav li.back a:hover{
    color: #6b4e2c!important;
    border-color: #6b4e2c!important;
	background:none!important;
}



.newdesign #sidebar #recent h2,
.newdesign #sidebar #category h2,
.newdesign #sidebar #archives h2{
	background:none;
	padding: 0px;
}
.newdesign #sidebar #recent *{
	max-width:initial;
}
.newdesign #sidebar #recent > ul{
	/*background:#f6f6f6;*/
    background:#fff;
}
.newdesign #sidebar #recent ul li h3,
.newdesign #sidebar #recent ul li h3 a{
	color:#2f2f2f;
    font-size: 15px;
}
.newdesign #sidebar .time-cat-box{
	margin-top:0px;
}
.newdesign #sidebar #category ul li a{
	background:none;
}
.newdesign #sidebar #category ul li,
.newdesign #sidebar #archives ul li,
.newdesign #sidebar #recent > ul > li{
	border-bottom: 1px solid #eeeeee;
}
.newdesign #sidebar #archives select{
	width: 100%;
    height: 40px;
    font-size: 1.5rem;
	border: 1px solid #333;
	margin: 1em auto;
}
.newdesign #sidebar #recent ul li img{
	width: 100%;
}



footer {
    position: relative;
    background: #5e5e5e;
	color: #fcfcfc;
	font-size: 1.1rem;
    letter-spacing: 3px;
}
footer .inner-box {
    width:1080px;
    max-width:1080px;
}
footer a:active,
footer a:link,
footer a:visited{
	color: #fcfcfc;
	font-size: 1.1rem;
    letter-spacing: 3px;
}
footer a:hover{
	color:#fcfcfc !important;
	border-bottom:1px solid #fcfcfc;
}
div.app_banner a {
	display:block;
	width:196px;
	height:196px;
	position:absolute;
	right:-5px;
	bottom:20px;
}
div.footer_top a {
  display:block;
  width:253px;
  height:127px;
  position:absolute;
  right:6px;
  bottom:280px;
}
div.app_banner a:hover,
div.footer_top a:hover{
	text-decoration:none;
	border:none;
}
/*
div.app_banner a:hover,
div.footer_top a:hover{
	background:rgba(255,255,255,.4);
}
*/
div.footer_top{
	position:relative;
	z-index:10000;
	background: #7a6b59 url("../images/footer/bg_02.jpg") top center no-repeat;
	height: 475px;
}
div.footer_top div{
	width:1080px;
	height:475px;
	margin:0 auto;
	position:relative;
	z-index:10000;
	background: url("../images/footer/bg_03.png") top center no-repeat;
	height: 475px;
}
footer .logo {
	float: left;
    border-right: 1px solid #fcfcfc;
    padding-right: 1%;
    width: 22%;
	font-size: 1.1rem;
    letter-spacing: 3px;
}
footer .logo a{
	display:block;
	text-align:center;
    margin-bottom: 5px;
}
footer .inner-box .cont-01 {
	padding-left: 2%;
    width: 51%;
}
footer .inner-box .cont-01 nav .menu.last {
	padding-right: 0px;
}
footer .inner-box .cont-02 {
    border-left: 1px solid #fcfcfc;
	width: 23%;
}

footer .inner-box .cont-01 nav .menu p {
    border-bottom: solid 1px #fcfcfc;
}
footer .copy{
	border-top: none;
    width: 100%;
    background-color: #585858;
    padding-top: 5px;
    padding-bottom: 5px;
}

footer .totop {
  position: fixed;
  bottom: 10px;
  right: 30px;
  transition: .25s;
    z-index: 9999;
}

@media screen and (min-width: 750px) {

    footer .totop:hover {
      bottom: 15px;
    }

    footer .totop a:hover {
        border-bottom: none;
    }
}

/* ---------------------- function  ---------------------------- */

header.function{
	background:url("../images/function/bg_01.jpg") top center no-repeat;
	height:269px;
    text-align: center;
}/*
header.function h1{
	padding-top: 10px;
    color: #fff;
    position: relative;
    left: -268px;
}*/
header.function h2,
header.function p.clause
{
    margin-top: 62px;
}
#faq-box-02{
	margin:0 auto 50px auto;
}

/* ---------------------- faq  ---------------------------- */

header.faq{
	background:url("../images/faq/bg_01.jpg") top center no-repeat;
	height:272px;
    text-align: center;
}
header.faq h2,
header.faq p.clause
{
    margin-top: 62px;
}

#faq.newdesign .faq-top-box{
	border:none;
	background: none;
}
#faq.newdesign .faq-top-box dl dd{
	padding-top:20px;
}
#faq.newdesign .faq-top-box dl dd ul li:before{
	background: url(../images/faq/ico-cat2.png) no-repeat left 9px;
    width: 8px;
}


#faq.newdesign .faq-top-box dl dt a{
	color: #948068!important;
    background-color: transparent!important;
    border: 1px solid #948068;
    border-radius: 35px;
    text-align: center;
    line-height: 35px;
	line-height:1.5;
}
#faq.newdesign #faq-list{
	/*background-color:#f6f6f6;*/
	padding-top:40px;
    padding-bottom: 50px;
}
#faq.newdesign #faq-list .inner-box{
	background-color:#ffffff;
	padding-top:40px;
}

#faq.newdesign #faq-list section{
	background: none;
    height: 250px;
    margin: 0px;
    padding: 20px 20px 20px 20px;
    border-bottom: 1px solid #f0f0f0;
}
#faq.newdesign #faq-list section h3, #faq.newdesign #faq-list section ul{
	margin:0px;
}
#faq.newdesign #faq-list section ul li a,
#faq.newdesign #faq.newdesign-single ul li a{
	background-color: #ec8f26;
    color: #fff;
    border-radius: 30px;
    padding: 6px 20px;
	margin-bottom: 10px;
}
#faq.newdesign #faq-list section ul li.cat2 a,
#faq.newdesign #faq.newdesign-single ul li.cat2 a{
    display: inline-block;
    background-color: #6b4e2c;
    color: #fff;
    border-radius: 0px !important;
}

#faq.newdesign #faq-list section:nth-child(odd){
	border-right:1px solid #f0f0f0;
}
#faq.newdesign #faq-list section p{
	background-color: #f6f6f6;
    padding: 15px 25px;
    margin-top: 2px;
}
#faq.newdesign div.faq_details{
	background-color: #f6f6f6;
    padding-top: 50px;
    padding-bottom: 50px;
}
#faq.newdesign #faq-single{
	background:#fff;
    min-height: initial;
    margin-bottom: 0px;
}
#faq.newdesign #faq-single h1,
#faq.newdesign #faq-single h2,
#faq.newdesign #faq-single ul{
    margin: 0px;
    font-weight: normal;
    letter-spacing: 2px;
}
#faq.newdesign #faq-single ul li a{
	display: inline-block;
    background-color: #ec8f26;
    color: #fff;
    border-radius: 0px;
}
#faq.newdesign #faq-single ul li span{
    /*padding-left: 15px;*/
    font-size: 13px;
    color: #b5b5b5;
}
#faq.newdesign #faq-single > section{
	width: 100%;
	background: #f6f6f6;
    padding: 30px 30px;
}
#faq.newdesign #faq-single > section:before,
#faq.newdesign #faq-single:after{
    background: none;
}
#faq.newdesign #faq-single > section p{
	letter-spacing: 3px;
}
.newdesign .faq_details #page-nav{
    padding: 40px!important;
    padding-top: 10px!important;
    padding-bottom: 50px!important;
    width: 1000px!important;
}

/* ---------------------- voice  ---------------------------- */

header.voice{
	background:url("../images/voice/bg_01.jpg") top center no-repeat;
	height:272px;
    text-align: center;
}/*
header.voice h1{
	padding-top: 10px;
    color: #fff;
    position: relative;
    left: -268px;
}*/
header.voice h2,
header.voice p.clause
{
    margin-top: 62px;
}

#voice.newdesign,
#column.newdesign{
	padding: 50px 6.5% 0;
}
#voice.newdesign .inner-box,
#column.newdesign .inner-box{
	max-width:1080px;
}
#voice.newdesign .time-cat-box time,
#column.newdesign .time-cat-box time{
	color:#a1a1a1;
}
#voice.newdesign .art-cats-list li a,
#column.newdesign .art-cats-list li a{
	background-color: #6b4e2c;
    color: #fff;
	letter-spacing: 2px;
}

#voice.newdesign .btn03 a,
#column.newdesign .btn03 a{
	float: left;
    margin-top: 15px;
    color: #6e5130;
    border: 1px solid #6e5130;
    background: none;
    border-radius: 40px;
    text-indent: 0px;
}
#voice.newdesign .btn03 a:before,
#column.newdesign .btn03 a:before{
	content: "";
}
#voice.newdesign .article-list{
	border-bottom-width:1px;
	position: relative;
}

#voice.newdesign.single #main .article-list h1,
#voice.newdesign.single #main .article-list h2{
	/*padding-bottom: 10px;*/
	text-align:center;
}
#column.newdesign > .clearfix #main,
#voice.newdesign > .clearfix #main,
#function.newdesign > .clearfix #main{
	/*width:750px;*/
    width:100%;
}
#voice.newdesign.single h3.midashi,
#column.newdesign.single h3.midashi,
#function.newdesign.single h3.midashi{
	background: #848484!important;
    font-size: 20px!important;
    color: #fff!important;
    padding-left: 20px!important;
	padding-top: 0px!important;
    padding-bottom: 0px!important;
    line-height: 45px!important;
    margin-top: 25px!important;
    margin-bottom: 20px!important;
}
#voice.newdesign.single h3.midashi:before,
#column.newdesign.single h3.midashi:before{
	background: url(../images/common/img_02.png) top left no-repeat!important;
    display: block!important;
    content: " "!important;
    position: relative!important;
    top: 45px!important;
    left: 35px!important;
    width: 16px!important;
    height: 14px!important;
    margin-bottom: -14px!important;
}
#voice.newdesign.single h3.midashi_small,
#column.newdesign.single h3.midashi_small{
	font-size: 18px!important;
    border-bottom: 1px solid #e6e6e6!important;
    margin-top: 10px!important;
    margin-bottom: 10px!important;
	padding-bottom: 3px!important;
	background: none!important;
    font-weight: normal!important;
}
#voice.newdesign.single h3.midashi_small span,
#column.newdesign.single h3.midashi_small span{
	border-left: 4px solid #848484!important;
	padding-left: 15px!important;
}
#voice.newdesign.single p.quote,
#column.newdesign.single p.quote{
    background: #ebebeb url(../images/common/img_01.png) top left no-repeat!important;
    background-position: 38px 18px!important;
    padding: 20px 80px!important;
    margin-top: 30px!important;
    margin-bottom: 20px!important;
    border-radius: 7px!important;
}

/* ---------------------- column  ---------------------------- */

header.column{
	background:url("../images/column/bg_01.jpg") top center no-repeat;
	height:272px;
    text-align: center;
}/*
header.column h1{
	padding-top: 10px;
    color: #fff;
    position: relative;
    left: -268px;
}*/
header.column h2,
header.column p.clause
{
    margin-top: 62px;
}
#column.newdesign .article-list {
    border-bottom-width: 1px;
    position: relative;
	min-height: 205px;
	width: 100%;
}
#column.newdesign .article-list img.photo{
	position: absolute;
    top: 0px;
    left: 0px;
    width: 275px;
    height: 180px;
    object-fit: cover;
}
#column.newdesign .article-list div.time-cat-box{
	padding-left: 305px;
}
#column.newdesign .article-list div.art-box{
	padding-left: 290px;
}
#column.newdesign .img-none div.time-cat-box,
#column.newdesign .img-none div.art-box{
	padding-left:0;
}
#column.newdesign #main .article-list h2{
	color: #2f2f2f;
}
#column.newdesign #main #column-single img.main_photo{
	width:100%;
	padding-bottom:20px;
}

#column.newdesign #main #column-single img{
    /*width:100%;
    height:auto;*/
}


/* ---------------------- top ---------------------------- */
header.top,
.letter-box{
	background:#fff url("../images/top/main_bg.png") center center no-repeat;
	background-size: cover;
    text-align: center;
    padding-top: 45px;
}
header.top img.logo,
.letter-box img.logo{
    margin-top: 20px;
    margin-bottom: 20px;
}
header.top .top_main_content{}
header.top .top_main_content ul{
    display: -ms-flexbox;
    -js-display: flex;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    max-width: 1180px;
    margin: 0 auto;
}
header.top .top_main_content ul li{}
header.top .top_main_content ul li.left{
    width: 34.3%;
    max-width: 404px;
    margin-left: 2.8%;
}
header.top .top_main_content ul li.center{
    width: 24%;
    max-width: 278px;
    background: url(../images/top/top_phone.png) top center no-repeat;
    background-size: 100% 100%;
    position: relative;
    height: 0px;
    padding-top: 44.6%;
}
header.top .top_main_content ul li.center::before{
    content: "";
    display: block;
    position: absolute;
    z-index: 2;
    width: 110px;
    height: 111px;
    top: -20px;
    left: -45px;
    background: url(../images/top/phone_mark.png) top center no-repeat;
}
header.top .top_main_content ul li.center .phone_box{
    width: 86%;
    padding-left: 7%;
    padding-top: 23%;
    padding-bottom: 6%;
    position: absolute;
    top: 0px;
    left: 0px;
}
header.top .top_main_content ul li.center .video_box{
    width: 100%;
    height: 100%;
}
header.top .top_main_content ul li.center .video_box video{
    width: 100%;
    height: auto;
}
header.top .top_main_content ul li.right{
    text-align: center;
    margin-right: 3%;
    max-width: 379px;
    width: 33%;
}
header.top .top_main_content ul li img{
    max-width: 100%;
}
header.top .top_main_content ul li.right .no1{
    max-width: 343px;
    display: block;
    margin: 0 auto;
    width: 90.6%;
}
header.top .top_main_content ul li.right .site_logo{
    max-width: 194px;
    display: block;
    margin: 0 auto;
    display: none;
}
header.top .top_main_content ul li.right .sns{
    display: block;
    margin: 0 auto;
    margin-top: 30px;
    width: 100%;
    display: none;
}
.top_main_content_btn_area{
    padding-top: 25px;
    padding-bottom: 35px;
    max-width: 700px;
    width: 100%;
    margin: 0 auto;
    display: block;
}
.top_main_content_btn_area ul{
    display: -ms-flexbox;
    -js-display: flex;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}
.top_main_content_btn_area ul li{
    max-width: 315px;
    width: 45%;
    text-align: center;
}
.top_main_content_btn_area ul li a{
    color: #fff;
    width: 100%;
    display: block;
    opacity: 1;
    display: center;
}
.top_main_content_btn_area ul li a:hover{
    opacity: 0.8;
    -webkit-transition: all .4s;
    transition: all .4s;
}
.top_main_content_btn_area ul li.demo_btn a{
    background: #54c5c1 url(../images/common/arrow_right_white.png) right 10px center no-repeat;
    padding: 18px 0px;
    line-height: 1em;
    border-radius: 50px;
    letter-spacing: 0px;
    border: 1px solid #54c5c1;
}
.top_main_content_btn_area ul li.signup_btn a{
    background: #ea596d url(../images/common/arrow_right_white.png) right 10px center no-repeat;
    padding: 18px 0px;
    line-height: 1em;
    border-radius: 50px;
    letter-spacing: 0px;
    border: 1px solid #ea596d;
}
.youtube_area{
    padding-top: 40px;
    padding-bottom: 40px;
    max-width: 800px;
    margin: 0 auto;
    width: 90%;
    position: relative;
}
.youtube_area::before{
    background: url(../images/top/rakuraku.png) center center no-repeat;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: -40px;
    width: 9px;
    height: 175px;
}
.youtube_area::after{
    background: url(../images/top/wedding.png) center center no-repeat;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: -40px;
    width: 10px;
    height: 153px;
}
.banner_area{
    padding-top: 40px;
    padding-bottom: 40px;
    max-width: 1204px;
    margin: 0 auto;
    width: 90%;
    position: relative;
}
header.top img.logo,
.letter-box img.logo{
    margin-top: 20px;
    margin-bottom: 20px;
}
footer .letter-box{
    display: none;
}
footer .letter-box img.logo{
    float: none;
    border-right: none;
    padding-right: 1%;
    width: inherit;
    font-size: 1.1rem;
    letter-spacing: 0;
}
header.top h1 img,
.letter-box .logo-top img{
	margin:0 auto;
}
#wrapper > header.top h1,
.letter-box .logo-top,
.letter-box .logo_top{
	text-align:center;
	padding: 0px;
    color: #fff;
    position: relative;
}
header.top .inner .fR,
.letter-box .inner .fR{
	width: 337px;
	position: relative;
	top: 102px;
	right: 11px;
	overflow: hidden;
	height: 524px;
}
header.top .inner,
.letter-box .inner{
	background: url(../images/top/img_01.png) top right no-repeat;
    width: 900px;
    text-align: left;
    margin: 0 auto;
    height: 563px;
		background-size: 362px;
}



@media screen and (min-width: 750px) {

.letter-box .inner{
	position: relative;
}


}

.renewal-2019-top .letter-box .inner .fR{
	background: #fff;
	overflow: hidden;
}
.renewal-2019-top .letter-box .inner .fR .video_box{}
.renewal-2019-top .letter-box .inner .fR .video_box video{
    width: 100%;
    height: 100%;
}


.renewal-2019-top .letter-box .inner .fR .demo-image {
	width: 100%;
}
.renewal-2019-top .letter-box .inner .fR .bx-wrapper {
    display: none;
}
#topPage.newdesign article > .inner > p.alnC{
	margin-top:50px;
}
#topPage.newdesign p {
    font-size: 1.6rem;
    letter-spacing: 3px;
    line-height: 2;
    font-style: normal;
}
#topPage.newdesign{
	background: url(../images/top/bg_02.jpg) top left repeat;
}
#topPage.renewal-2019{
	background: url(../images/top/2019/bg.png) top left repeat;
}
#topPage.newdesign article#iphone{
    padding:85px 0 45px 0;
    background: url(../images/top/bg-iphone.jpg) 50% 50% no-repeat;
    background-size: cover;
}
#topPage.newdesign article#iphone div.inner {
    width: 980px;
    margin: 0 auto;
}
#topPage.newdesign article#iphone p {
    color: #fff;
    margin:1em 0 0 0;
}
#topPage.newdesign article#iphone .clearfix > * {
    display: inline-block;
    vertical-align: middle;
    margin-right:10px;
}
#topPage.newdesign article#concept{}
#topPage.newdesign article#concept div.inner{
	background: url(../images/top/bg_03.png) center left no-repeat;
	background-position: 50px center;
	width:980px;
	margin:0 auto;
	height:600px;
}
#topPage.newdesign article#concept div.inner h2{
	padding-left: 330px;
    padding-top: 175px;
}
#topPage.newdesign article#concept div.inner p{
    padding-left: 330px;
	padding-top: 15px;
}
#topPage.newdesign article#recommend{
	background: url(../images/top/bg_04.jpg) top center no-repeat;
	padding-top: 80px;
    padding-bottom: 124px;
	background-attachment:fixed;
}
#topPage.newdesign article#recommend div.inner{
	width:1080px;
	margin:0 auto;
	text-align:center;
	background:#e9e9eb;
	opacity:0.9;
	padding: 50px 0px;
}
#topPage.newdesign article#recommend div.inner h2{
    padding-bottom: 15px;
}
#topPage.newdesign article#recommend div.inner ul li{
	display: inline-block;
    width: 310px;
    text-align: left;
    padding: 0px 15px;
    vertical-align: top;
}
#topPage.newdesign article#recommend div.inner ul li img.number{
	margin-bottom: -55px;
    position: relative;
    left: -5px;
	z-index: 1;
}
#topPage.newdesign article#recommend div.inner ul li img.photo{}
#topPage.newdesign article#recommend div.inner ul li h3{
    padding: 15px 0 0 0;
    /*height: 68px;
    line-height: 68px;*/
    font-size: 2.6rem;
    min-height: 68px;
    line-height: 1.2;
    letter-spacing: 3px;
    display: inline-block;
}
#topPage.newdesign article#recommend div.inner ul li h3 span{
	color: #ec576b;
}
#topPage.newdesign p.font-red{
    color: #e93a3e;
    font-size: 1.4rem;
    letter-spacing: 0px;
}
#topPage.newdesign p.font-red span{
display: inline-block;
}
#topPage.newdesign article#recommend div.inner ul li .pro4 {
  /*margin-top: -21px;*/
}
#topPage.newdesign .bxslider > div{
	position:relative;
}
#topPage.newdesign .preview{
	position:fixed;
	top:0;
	left:0;
	z-index:100000001;
	width:100%;
	height:100%;
	display:table;
	text-align:center;
}
#topPage.newdesign .preview img{
	margin:0 auto;
}
#topPage.newdesign .preview > *{
	display:table-cell;
	vertical-align:middle;
}
.prevew-on .layer{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:100000000;
	background:rgba(0,0,0,.3);
}
/* モーダル
--------------------------- */
#js-sliderModalBk {
  display: none;
  position: absolute;
  z-index: 3;
  top: 0;
  left: 0;
  background: rgba(0,0,0,0.5);
}
.sliderModalWrap {
  display: none;
  position: fixed;
  z-index: 3;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 326px;
  height: 531px;
  margin: auto;
}
.sliderModal {
  position: relative;
  margin-bottom: 30px;
}
.sliderModal li {
  position: absolute;
  top: 0;
  left: 0;
  height: 531px;
  background: #fff;
}
.sliderModal li.active {
  z-index: 1;
}
.sliderModal__contents {
  position: absolute;
  top: 100px;
  right: 150px;
}
.sliderModal__btn {
  display: flex;
  position: absolute;
  z-index: 2;
  right: 20px;
  bottom: 20px;
}
.sliderModal__prev,
.sliderModal__next {
  display: inline-block;
  margin: 0 10px;
  cursor: pointer;
}
.sliderModal .modal-active {
  display: block !important;
  z-index: 100 !important;
}

#topPage.newdesign article#function{
	text-align:center;
	padding-bottom: 20px;
    position: relative;
}
#topPage.newdesign article#function:before{
    content: "";
    width: 100%;
    height: 55%;
    position: absolute;
    bottom: 0;
    left: 0;
    background: url(../images/top/bg-function.png) repeat;
}
#topPage.newdesign article#function div.inner{
    width: 1130px;
	margin:0 auto;
	text-align:center;
    z-index: 1;
    position: relative;
}
#topPage.newdesign article#function div.inner ul li{
    display: inline-block;
    width: 340px;
    border: 1px solid #f1f1f1;
    vertical-align: top;
    background: #fff;
    margin: 15px;
	/*min-height:245px;*/
    margin-bottom: 50px;
}
#topPage.newdesign article#function div.inner ul li h3{
	margin-top: -40px;
}
#topPage.newdesign article#function div.inner ul li p{
    padding: 20px;
	text-align:left;
}

div.app_banner{
	background: #7a6b59 url(../images/footer/bg_01.jpg) top center no-repeat;
    height: 475px;
}

#topPage.newdesign article#howto{
    text-align: center;
    padding-top: 50px;
}
#topPage.newdesign article#howto h2{
    padding-bottom: 30px;
}
#topPage.newdesign article#howto div.inner{
	background: url(../images/top/bg_05.jpg) top center repeat;
    max-width: 1700px;
    text-align: right;
    margin: 0 auto;
}
#topPage.newdesign article#howto div.inner1,
#topPage.newdesign article#howto div.inner2{
	background: url(../images/top/bg_02.jpg) top left repeat;
}
#topPage.newdesign article#howto div.inner3{
	background:#f6f6f6;
}
#topPage.newdesign article#howto .func{
	background: url(../images/top/bg_05.jpg) top center repeat;
}
#topPage.newdesign article#howto .func div.inner{
	background:none;
	position: relative;
	max-width: 100%%;
    min-height: 450px;
}
#topPage.newdesign article#howto .func div.inner:before{
	background:none;
}
#topPage.newdesign article#howto .func div.photo-01 img{
	display:none !important;
}
#topPage.newdesign article#howto .func div.photo-01{
	width:50%;
	float:right;
	background-size:cover !important;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
}
#topPage.newdesign article#howto .function1 div.photo-01{
	background: url(../images/top/img_04.jpg) center center no-repeat;
}
#topPage.newdesign article#howto .function2 div.photo-01{
	background: url(../images/top/img_08.jpg) center center no-repeat;
}
#topPage.newdesign article#howto .function3 div.photo-01{
	background: url(../images/top/img_09.jpg) left center no-repeat;
}
#topPage.newdesign article#howto div.inner div.desc_box{
	width:50%;
	float:left;
	display:inline-block;
	vertical-align:top;
    text-align: left;
}
#topPage.newdesign article#howto .function1 div.inner div.desc_box{
	padding-bottom: 95px;
}
#topPage.newdesign article#howto .func div.inner div.desc_box{
    width: 1080px;
    float: none;
    margin: 0 auto;
    display: block;
    vertical-align: top;
    text-align: left;
	position:relative;
}

#topPage.newdesign article#howto div.inner div.desc_box *{
	max-width:500px;
}
#topPage.newdesign article#howto div.desc_box .sub{
    position: relative;
    top: -25px;
}
#topPage.newdesign article#howto div.desc_box h3{
	padding-bottom: 35px;
}
#topPage.newdesign article#howto div.inner div.desc_box p{
    padding-bottom: 20px;
    padding-right: 35px;
}
#topPage.newdesign article#howto div.inner div.desc_box a.btn{
	width:100%;
    max-width: 230px;
	margin-bottom: 20px;
}
#topPage.newdesign article#howto div.inner div.desc_box a.btn span,
#topPage.newdesign article#howto div.inner div.desc_box a.btn p{
	border-color: #6e5130;
    background: none;
    color: #6e5130!important;
    padding: 0px;
	width:90%;
    max-width: 230px;
    border-radius: 0px;
	transition:all .4s;
}
#topPage.newdesign article#howto div.inner img.photo{
	max-width:850px;
	width:50%;
	display:inline-block;
	vertical-align:top;
}
#topPage.newdesign article#howto div.example{
	position:relative;
	background: url(../images/top/img_06.png) top center repeat-x;
	height:398px;
}
#topPage.newdesign article#howto .function1 div.inner1 .bottom{
    position: relative;
}
#topPage.newdesign article#howto .function1 div.inner1 .bottom:before{
	content:"";
	z-index:100;
	background: url(../images/top/img_05.png) top center no-repeat;
	width:196px;
	height:168px;
    position: absolute;
    right: 0;
    bottom: -84px;
}
#topPage.newdesign article#howto  section.function2{
	margin-top:100px;
}
#topPage.newdesign article#howto div.inner div.desc_box img.photo_small{
	padding-bottom: 20px;
}
#topPage.newdesign article#howto  section.function1 div.bottom{
    background: url(../images/top/bg_06_add-r.png) top center no-repeat;
    background-position: 0px 50px;
    padding-top: 50px;
    width: 1080px;
    margin: 0 auto;
    padding-bottom: 100px;
    text-align: left;
}
#topPage.newdesign article#howto  section.function2 div.bottom,
#topPage.newdesign article#howto  section.function3 div.bottom{
    background: url(../images/top/bg_06.png) top center no-repeat;
    background-position: 0px 50px;
    height: 645px;
    padding-top: 50px;
    width: 1080px;
    margin: 0 auto;
	padding-bottom: 100px;
    text-align: left;
}

#topPage.newdesign article#howto  section.function1 div.bottom h2,
#topPage.newdesign article#howto  section.function2 div.bottom h2,
#topPage.newdesign article#howto  section.function3 div.bottom h2{
    position: relative;
    top: 10px;
    left: 132px;
}
#topPage.newdesign article#howto  section.function1 div.bottom h3.top,
#topPage.newdesign article#howto  section.function2 div.bottom h3.top,
#topPage.newdesign article#howto  section.function3 div.bottom h3.top{
    padding-left: 165px;
    padding-top: 20px;
    padding-bottom: 20px;
    overflow: visible;
    font-size: 3rem;
    letter-spacing: 5.8px;
	line-height:1.6;
}
#topPage.newdesign article#howto  section.function2 div.bottom h3.top{
    height: 80px;
    width: 406px;
}
#topPage.newdesign article#howto  section.function3 div.bottom h3.top{
    height: 85px;
    width: 1080px;
}
#topPage.newdesign article#howto  section.function1 div.bottom h3.top span{
    color:#ec576b;
}
#topPage.newdesign article#howto  section.function2 div.bottom h3.top span,
#topPage.newdesign article#howto  section.function3 div.bottom h3.top span{
	color:#ec576b;
	display:block;
}
#topPage.newdesign article#howto  section.function2 div.bottom h3.bottom{
    padding-left: 160px;
    padding-top: 20px;
}
#topPage.newdesign article#howto  section.function1 div.bottom p.top{
    width: 820px;
    padding-left: 165px;
    box-sizing: border-box;
}
#topPage.newdesign article#howto  section.function2 div.bottom p.top,
#topPage.newdesign article#howto  section.function3 div.bottom p.top{
	padding-left: 165px;
    width: 500px;
}
#topPage.newdesign article#howto  section.function2 div.bottom p.bottom{
	padding-left: 575px;
    width: 448px;
    padding-top: 29px;
}
#topPage.newdesign article#howto  section.function3 div.bottom{
	background: url(../images/top/bg_07.png) top center no-repeat;
	background-position: 0px 50px;
	height: 408px;
}
#topPage.newdesign article#special{
    background: url(../images/top/bg_08.jpg) top center no-repeat;
    text-align: center;
    padding-top: 110px;
    padding-bottom: 50px;
}
#topPage.newdesign article#special h2{
    padding-bottom: 100px;
}
#topPage.newdesign article#special div.inner{
	width:1080px;
    margin: 0 auto;
}
#topPage.newdesign article#special div.inner ul li{
    width: 455px;
    padding: 30px;
    display: inline-block;
    vertical-align: top;
    background: #fff;
    text-align: left;
    margin: 11px;
	min-height:190px;
}
#topPage.newdesign article#special div.inner ul li h3{
    margin-bottom: 15px;
}
#topPage.newdesign article#special div.inner ul li p{}
#topPage.newdesign article#special a.btn{
	display:block;
	width:90%;
	max-width: 375px;
    padding-bottom: 20px;
    margin: 0 auto;
    padding-top: 30px;
}
#topPage.newdesign article#special a.btn span,
#topPage.newdesign article#special a.btn p{
	border: 1px solid #6e5130;
    background: none;
	display:block;
    color: #6e5130!important;
    padding: 0px;
    /*width: 230px;*/
    border-radius: 0px;
	transition:all .4s;
	line-height: 3.5em;
}
#topPage.newdesign article#howto div.inner div.desc_box a.btn:hover span,
#topPage.newdesign article#special a.btn:hover span,
#topPage.newdesign article#howto div.inner div.desc_box a.btn:hover p,
#topPage.newdesign article#special a.btn:hover p{
    background: #6e5130;
    color: #fff!important;
}
#topPage.newdesign article#pickup{
	background: url(../images/top/bg_09.jpg) top center no-repeat;
    padding-top: 74px;
    text-align: center;
	padding-bottom: 70px;
	background-attachment: fixed;
	background-size: cover;
}
#topPage.newdesign article#pickup div.inner{
    background: #fff;
    opacity: 0.9;
    width: 1080px;
    margin: 0 auto;
    padding-bottom: 20px;
}
#topPage.newdesign article#pickup div.inner h2{
    padding-top: 50px;
    padding-bottom: 50px;
}
#topPage.newdesign article#pickup div.inner > .alnC{
    margin: 15px auto 50px auto;
}
#topPage.newdesign article#pickup div.inner ul li{
	display:inline-block;
	vertical-align:top;
	width:310px;
	margin: 10px;
	text-align:left;
}
#topPage.newdesign article#pickup div.inner ul li h4{
	padding-top: 10px;
    font-size: 2.2rem;
    letter-spacing: 3px;
    color: #ec576b;
	padding:0 3px;
	margin-bottom: 15px;
    height: 70px;
}
#topPage.newdesign article#pickup div.inner.gmo{
    margin-top: 30px;
    padding:25px 45px;
    box-sizing: border-box;
    text-align: left;
}
#topPage.newdesign article#pickup div.inner.gmo p{
    max-width:780px;
    margin:0 auto;
}
#topPage.newdesign article#pickup div.inner.gmo p span{
    color:#ec576b;
}
#topPage.newdesign article#pickup div.inner.gmo img{
    margin-right: 15px;
    vertical-align: middle;
}
#topPage.newdesign article#pickup div.inner.pro4{
  margin-top: 30px;
}
#topPage.newdesign article#pickup div.inner.pro4 .pro4-box{
  padding: 50px 0 20px 290px;
  background: url(../images/top/img_4pro_02.png) 110px 50px no-repeat;
  width: 610px;
}
#topPage.newdesign article#pickup div.inner.pro4 .pro4-box .txt{
  margin-top: 10px;
}

#topPage.newdesign article#point{
    text-align: center;
    padding-top: 50px;
}
#topPage.newdesign article#point .point_banner{
    max-width: 860px;
    width: 95%;
    margin: 0 auto;
}
#topPage.newdesign article#point .point_banner .point_banner_inner{
    display: -ms-flexbox;
    -js-display: flex;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    width: 100%;
}
#topPage.newdesign article#point .point_banner .point_banner_photo{
    width: 31%;
}
#topPage.newdesign article#point .point_banner .point_banner_photo img{
    max-width: 100%;
}
#topPage.newdesign article#point .point_banner .point_banner_details{
    width: 64%;
}
#topPage.newdesign article#point .point_banner .point_banner_details .point_banner_ttl{
    width: 100%;
}
#topPage.newdesign article#point .point_banner .point_banner_details .point_banner_ttl img{
    max-width: 100%;
}
#topPage.newdesign article#point .point_banner .point_banner_details p{
    padding-top: 10px;
}
#topPage.newdesign article#point .point_banner .point_banner_btn{
    width: 100%;
    max-width: 620px;
    display: block;
    text-align: center;
    margin: 0 auto;
    margin-top: 50px;
}
#topPage.newdesign article#point .point_banner .point_banner_btn a{
    background: #ea596d url(../images/common/arrow_right_white.png) right 20px center no-repeat;
    line-height: 1em;
    border-radius: 50px;
    letter-spacing: 0px;
    border: 1px solid #ea596d;
    padding: 22px 0px;
    font-size: 20px;
    width: 100%;
    display: block;
    color: #fff;
}
#topPage.newdesign article#point .point_banner .point_banner_btn a:hover{
    opacity: 0.7;
    -webkit-transition: all .4s;
    transition: all .4s;
}
#topPage.newdesign article#point h2{
    padding-bottom: 20px;
}
#topPage.newdesign article#point h3{
    padding-bottom: 30px;
}
#topPage.newdesign article#point div.inner{
	/*background: url(../images/top/bg_11.png) top center repeat;*/
	margin-top: 200px;
    padding-bottom: 50px;
}
#topPage.newdesign article#point div.inner img.photo{
    margin-top: -200px;
}
#topPage.newdesign article#point div.inner h3{
	padding-top: 20px;
    padding-bottom: 40px;
}
#topPage.newdesign article#point div.inner ul li{
	margin: 15px;
    display: inline-block;
    vertical-align: top;
    width: 500px;
    min-height: 450px;
    padding: 20px 0;
    background: #fdfdfd;
}
#topPage.newdesign article#point div.inner ul li h4{}
#topPage.newdesign article#point div.inner ul li p{
	text-align: left;
    padding: 30px;
    background: #f4f4f4;
    width: 70%;
    margin: 0 auto;
 /*   height: 80px;*/
}
.h-sat{
	text-align:center;
	font-size:2rem;
}
#topPage.newdesign article#howto h2.h-sat{
	padding: 58px 0 88px 0;
}
.h-sat span{
	color:#333;
	line-height:1;
	display:block;
	font-size:5.4rem;
	font-family: 'Satisfy', cursive ,serif;
	font-weight:bold;
}
#topPage.newdesign article#offer{
    padding:80px 0;
	background:url(../images/top/bg_05.jpg) repeat;
}
#topPage.newdesign article#offer div.inner ul li p.icn {
	margin-top: 10px;
}
#topPage.newdesign article#offer div.inner{
    width:1180px;
    margin:0 auto;
    text-align:center;
    opacity:0.9;
    padding: 25px 0;
}
#topPage.newdesign article#offer div.inner h2{
    padding-bottom: 15px;
}
#topPage.newdesign article#offer div.inner ul li{
	position:relative;
    display: inline-block;
    width: 340px;
    text-align: left;
    vertical-align: top;
	margin: 0 15px;
	vertical-align: top;
	background: #fff;
	padding-bottom:10px;
}
#topPage.newdesign article#offer div.inner ul li img.number{
    position: absolute;
    left: 50%;
	margin-left:-38px;
	top:128px;
    z-index: 1;
}
#topPage.newdesign article#offer div.inner ul li p{
    padding: 0px 15px;
}
#topPage.newdesign article#offer div.inner ul li h3{
    padding:40px 0 5px 0;
	font-size: 2.2rem;
	letter-spacing: 3px;
	color: #ec576b;
    /*height: 68px;
    line-height: 68px;*/
}

#topPage.newdesign article#faq{
    background: url(../images/top/bg-faq.jpg) top center no-repeat;
    text-align: center;
    padding-top: 110px;
    padding-bottom: 50px;
}
#topPage.newdesign article#faq h2{
    padding-bottom: 100px;
	color:#fff;
}
#topPage.newdesign article#faq h2 span{
	color:#fff;
}
#topPage.newdesign article#faq div.inner{
	width:1080px;
    margin: 0 auto;
}
#topPage.newdesign article#faq div.inner section{
    width: 455px;
    padding: 30px;
    display: inline-block;
    vertical-align: top;
    background: #fff;
    text-align: left;
    margin: 11px;
	/*height:190px;*/
}
#topPage.newdesign #faq section p{
	background-color: #f6f6f6;
    padding: 15px 25px;
    margin-top: 2px;
	height: 100%;
	box-sizing: border-box;
}
#topPage.newdesign #faq div.faq_details{
	background-color: #f6f6f6;
    padding-top: 50px;
    padding-bottom: 50px;
}
#topPage.newdesign #faq section ul li{
	margin-bottom: 15px;
	font-size:1.5rem;
}
#topPage.newdesign #faq section ul li a{
    display: inline-block;
	background-color: #4ec5c1;
    color: #fff;
    border-radius: 30px;
    padding: 6px 20px;
	font-size:1.2rem;
    margin: 0 10px 4px 0;
	text-align: center;
	min-width: 70px;
}
#topPage.newdesign #faq section ul li.cat2 a{
    display: inline-block;
    background-color: #6b4e2c;
    color: #fff;
    border-radius: 0px !important;
}
#topPage.newdesign #faq section h3 {
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 10px;
	text-decoration:underline;
}
#topPage.newdesign #faq a.btn{
	width:90%;
    margin: 30px auto 0 auto;
	text-align:center;
    max-width: 400px;
}
#topPage.newdesign #faq a.btn span{
	border: 1px solid #ec576b;
    background: none;
	border-radius:0;
	transition:all .4s;
    color: #ec576b!important;
	line-height: 3.5em;
}
/*
#topPage.newdesign #faq a.btn{
	display:block;
	width:90%;
	max-width: 375px;
    padding-bottom: 20px;
    margin: 0 auto;
    padding-top: 30px;
	max-width: 400px;
}
#topPage.newdesign #faq a.btn span,
#topPage.newdesign #faq a.btn p{
	border: 1px solid #6e5130;
    background: none;
	display:block;
    color: #6e5130!important;
    padding: 0px;
    border-radius: 0px;
	transition:all .4s;
	line-height: 3.5em;
}*/
#topPage.newdesign #faq a.btn:active span,
#topPage.newdesign #faq a.btn:hover span,
#topPage.newdesign #faq a.btn:hover p{
    background: #6e5130;
    color: #fff!important;
}
#topPage.newdesign article#faq div.inner ul li h3{}
#topPage.newdesign article#faq div.inner ul li p{}
/*#topPage.newdesign article#faq a.btn{
	display:block;
	width:90%;
	max-width: 375px;
    padding-bottom: 20px;
    margin: 0 auto;
    padding-top: 30px;
	height:auto;
	min-height: 3.5em;
}
#topPage.newdesign article#faq a.btn span{
	min-height: 3.5em;
}
*/

.top_2022 #top_page_content #feature .content_box > ul{
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.top_2022 #top_page_content #feature .content_box > ul li{
    padding: 0 1%;
}
.top_2022 #top_page_content #hero .hero_details .btn_area{
    padding-top: 7%;
}
.top_2022 #hero .hero_details .ttl_area ul li{
    text-align: center;
}
.top_2022 #hero .hero_details .ttl_area ul li img{
    width: 125px;
    max-width: 100%;
}

@media screen and (max-width: 750px) {
    .top_2022 #hero .hero_details .ttl_area ul li img{
        width:100%;
    }
}
.top_2022 .benefits_content .link{
    text-align: right;
}
.top_2022 .benefits_content .link a{
    color: #a68b62;
    display: inline-block;
    letter-spacing: 0.1em;
    position: relative;
    min-height: 0px!important;
    cursor: pointer;
}
.top_2022 #function_4 .link {
    text-align: center;
    margin: -.5em auto 2em;
}
.top_2022 #function_4 .link a{
    color: #a68b62;
    border-bottom: 1px solid #a68b62;
    display: inline-block;
    letter-spacing: 0.1em;
    position: relative;
    min-height: 0px!important;
    cursor: pointer;
}
/*
---------------------------------------
flex
---------------------------------------
*/

.flex{
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content: space-between;
	box-sizing: border-box;
}
.flex.reverse{
	flex-direction: row-reverse;
}
.flex.nowrap{
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-content: center;
}
.flex.list{
	justify-content: flex-start;
}
.flex > *{
	box-sizing: border-box;
}
.flex.c02 > *{
	width: 48%;
}
.flex.c02-fd{
	align-items:center;
}
.flex.c02-fd > figure,
.flex.c02-fd > .lg{
	width: 31%;
}
.flex.c02-fd > div,
.flex.c02-fd > .sl{
	width: 65%;
}
.flex.c03 > *{
	width: 33.3333%;
}
.flex.c04 > *{
	width: 25%;
}
.flex.c05 > *{
	width: 20%;
}
.flex.c06 > *{
	width: 16.6666%;
}
.flex-tbl{
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
}
.flex > *{
	box-sizing: border-box;
}
.flex-auto {
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
    align-content: space-between;
}
.flex-auto > *{
	box-sizing: border-box;
	flex-basis: auto;
}

#topPage.renewal-2019 article .red{
	color:#ec576b
}
#topPage.renewal-2019 article .red2 i{
	font-style:normal;
	text-decoration:underline;
}
#topPage.renewal-2019 article .red2{
	color:#e80000;
}
.renewal-2019-top .bxslider2{
	display:none;
}
.renewal-2019-top .letter-box img.logo {
    margin-top: -4px;
    margin-bottom: 5px;
}
.renewal-2019-top .letter-box .inner {
    width: 916px;
    height: 712px;
	background-position:100% 16px;
}/*
.renewal-2019-top .letter-box .inner .fL {
    padding-left: 34px;
}*/
#topPage.renewal-2019 .h-sat span{
	font-size:7rem;
}
#topPage.renewal-2019 #topPage p {
    font-size: 1.6rem;
    letter-spacing: 2px;
    line-height: 1.8;
    font-style: normal;
}
#topPage.renewal-2019 article#recommend div.inner {
    max-width: 1340px;
	/*width:95%;*/
}
#topPage.renewal-2019 article#point {
    text-align: center;
    padding: 78px 0 50px;
	position:relative;
}
#topPage.renewal-2019 article#point:before{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	background:url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/bg-point.png) no-repeat 50% 0;
}
#topPage.renewal-2019 article#point > *{
	position:relative;
	z-index:10;
}
#topPage.renewal-2019 #point .inner{
	background:rgba(255,255,255,.8);
}
#topPage.renewal-2019 #point .flex {
    max-width: 950px;
    margin: 0 auto 114px;
    justify-content: center;
    align-content: center;
}
#topPage.renewal-2019 #point .flex p{
	max-width: 210px;
    margin: 0 auto;
    letter-spacing: 0;
    font-family: '小塚ゴシック Pr6N';
	text-align:left;
}
#topPage.renewal-2019 #design .ttl-box p{
}
#topPage.renewal-2019 #design .ttl-box p.ttl {
    font-size: 2.4rem;
    margin-bottom: 24px;
    line-height: 2.1;
    text-align: left;
	color:#321313;
}
#topPage.renewal-2019 #design .ttl-box {
    position: relative;
    max-width: 890px;
    margin: -10px auto 115px;
    text-align: left;
}
#topPage.renewal-2019 article#point div.inner{
	background:none;
	padding:0;
	margin:0 auto;
}
#topPage.renewal-2019 article#point > div.inner {
    background: rgba(255,255,255,.8);
    width: 98%;
    max-width: 1340px;
    margin: 0 auto;
	padding: 95px 0 0;
}
#topPage.renewal-2019 section#design div.inner {
	padding: 83px 0 1px 0;
    background: rgba(255,255,255,.8);
    width: 98%;
    max-width: 1340px;
}
#topPage.renewal-2019 section#design p.inner {
	padding: 50px 0;
    background: rgba(255,255,255,.8);
    width: 98%;
    max-width: 1340px;
	margin: 0 auto;
}
#topPage.renewal-2019 article#point h2 {
    padding-bottom: 9px;
}
#topPage.renewal-2019 #design .ttl-box:before,
#topPage.renewal-2019 #design .ttl-box:after{
	content:"";
	width:180px;
	height:155px;
	position:absolute;
}
#topPage.renewal-2019 #design .ttl-box:before{
	top: -5px;
	right: 153px;
	background:url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ico-design-free.png) no-repeat 0 0 / contain;
}
#topPage.renewal-2019 #design .ttl-box:after{
	top: 71px;
	right: -6px;
	background:url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ico-design-short.png) no-repeat 0 0 / contain;
}
#topPage.renewal-2019 article#functions{
	padding:78px 0 102px;
	background:url(/lp/wp/wp-content/themes/ecco-2017/images/top/bg-function.png) repeat;
}
#topPage.renewal-2019 article#functions .inner{
	background:rgba(255,255,255,.8);
    max-width: 1340px;
    margin: 0 auto;
	width:98%;
	padding: 1px 0 63px;
}
#topPage.renewal-2019 article#functions .h-sat i{
	display:inline-block;
	vertical-align:middle;
    position: relative;
	font-style:normal;
    left: -94px;
	top: 18px;
}
#topPage.renewal-2019 article#functions .h-sat{
	position:relative;
	margin:23px auto 40px;
}
#topPage.renewal-2019 article#functions .h-sat:before{
	content:"";
	width:133px;
	height:131px;
	vertical-align:middle;
	display:inline-block;
    position: relative;
    left: -130px;
	background:url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ttl-ico-free.png) no-repeat 0 0 / contain;
}
#topPage.renewal-2019 article#functions .flex{
    max-width: 1126px;
    margin: 0 auto;
    justify-content: center;
    align-content: center;
    width: 100%;
}
#topPage.renewal-2019 article#functions .inner > .alnC {
    margin-top: -5px;
}
#topPage.renewal-2019 article#functions .flex li {
    margin: 35px 0 32px;
    padding-bottom: 52px;
    position: relative;
}
#topPage.renewal-2019 article#functions .flex li p {
    max-width: 240px;
}
#topPage.renewal-2019 article#functions .flex li a {
    display: block;
    margin-top: 5px;
    position: absolute;
    bottom: 0;
}
#topPage.renewal-2019 article#functions .flex li h3 {
    font-size: 2.8rem;
    margin: 14px 0;
    line-height: 1.4;
    padding: 0 0 0 5px;
	color:#6e5130;
}
#topPage.renewal-2019 article#functions figure{
	position:relative;
}
#topPage.renewal-2019 article#functions figure::before {
    color: #56beb7;
    line-height: 1;
    font-size: 6.3rem;
    font-family: 'Satisfy', cursive ,serif;
    font-weight: bold;
    padding-bottom: 0px;
    border-bottom: 2px solid #56beb7;
    display: inline-block;
    position: absolute;
    top: -25px;
    left: 2px;
}
#topPage.renewal-2019 article#functions .num-01 figure:before {
	content:"01";
}
#topPage.renewal-2019 article#functions .num-01 figure:before {
	content:"01";
}
#topPage.renewal-2019 article#functions .num-02 figure:before {
	content:"02";
}
#topPage.renewal-2019 article#functions .num-03 figure:before {
	content:"03";
}
#topPage.renewal-2019 article#functions .num-04 figure:before {
	content:"04";
}
#topPage.renewal-2019 article#functions .num-05 figure:before {
	content:"05";
}
#topPage.renewal-2019 article#functions .num-06 figure:before {
	content:"06";
}
#topPage.renewal-2019 article#functions .num-07 figure:before {
	content:"07";
}
#topPage.renewal-2019 article#functions .num-08 figure:before {
	content:"08";
}
#topPage.renewal-2019 article#functions .num-09 figure:before {
	content:"09";
}
#topPage.renewal-2019 article#functions .num-10 figure:before {
	content:"10";
}
#topPage.renewal-2019 article#functions .num-11 figure:before {
	content:"11";
}
#topPage.renewal-2019 article#functions .num-12 figure:before {
	content:"12";
}
#topPage.renewal-2019 article#recommended{
	padding-bottom:15px;
	url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/bg-rec.png) no-repeat 50% 450px
}
#topPage.renewal-2019 article#recommended > .alnC{
    margin-bottom: 55px;
	position: relative;
}
#topPage.renewal-2019 article#recommended .h-sat i{
	display:inline-block;
	vertical-align:middle;
    position: relative;
	font-style:normal;
    left: -90px;
    top: 5px;
}
#topPage.renewal-2019 article#recommended .h-sat:before{
	content:"";
	width:133px;
	height:131px;
	vertical-align:middle;
	display:inline-block;
    position: relative;
    left: -135px;
	background:url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ttl-ico-free.png) no-repeat 0 0 / contain;
}
#topPage.renewal-2019 article#recommended .h-sat{
    margin: 70px auto 117px;
}
#topPage.renewal-2019 article#recommended .km-box::before {
    content: "";
    width: 1100px;
    height: 3px;
    background: rgba(255,255,255,1);
    position: absolute;
    top: -3px;
    left: 50%;
    margin-left: -555px;
}
#topPage.renewal-2019 article#recommended #rec-01::before {
	width: 1150px;
}
#topPage.renewal-2019 article#recommended #rec-02::before {
	width: 695px;
}
#topPage.renewal-2019 article#recommended #rec-03::before {
	width: 1180px;
}
#topPage.renewal-2019 article#recommended #rec-04::before {
	width: 795px;
}
#topPage.renewal-2019 article#recommended #rec-05::before {
	width: 1080px;
}
#topPage.renewal-2019 article#recommended #rec-06::before {
	width: 1080px;
}
#topPage.renewal-2019 article#recommended #rec-07::before {
	width: 1175px;
}
#topPage.renewal-2019 article#recommended #rec-08::before {
	width: 1195px;
}
#topPage.renewal-2019 article#recommended #rec-09::before {
	width: 1185px;
}
#topPage.renewal-2019 article#recommended .km-box {
	background:rgba(255,255,255,.8);
    max-width: 1334px;
    margin:75px auto;
	width:98%;
	min-width:1220px;
	position:relative;
	border:3px solid #ccc;
	border-radius:15px;
	padding: 0 0 40px;
}
#topPage.renewal-2019 article#recommended #rec-09,
#topPage.renewal-2019 article#recommended #rec-04,
#topPage.renewal-2019 article#recommended #rec-07{
	margin-top:145px;
}
#topPage.renewal-2019 article#recommended .ttl-box-km {
    width: 98%;
	max-width:1200px;
    margin: 0 auto -2px;
    position: relative;
    top: -67px;
    padding: 25px 25px 0 206px;
    min-height: 182px;
	left: 65px;
}
#topPage.renewal-2019 #sb_instagram{
	max-width:1380px;
	padding:0;
}
#topPage.renewal-2019 #sb_instagram #sbi_images {
    padding: 15px 0 !important;
}
#topPage.renewal-2019 #sb_instagram #sbi_images .sbi_item{
	padding: 0 25px 15px !important;
	padding: 0 !important;
}
#topPage.renewal-2019 #sbi_load .sbi_load_btn .sbi_btn_text:after {
	content:"...";
}
#topPage.renewal-2019 #sbi_load .sbi_load_btn .sbi_btn_text {
    font-size: 1.5rem;
    letter-spacing: 2px;
}
#topPage.renewal-2019 #sb_instagram #sbi_load .sbi_load_btn {
    position: relative;
    border-radius: 3em;
    padding: 12px 45px;
}
#topPage.renewal-2019 #sb_instagram .sbi_info p,
#topPage.renewal-2019 #sb_instagram .sbi_meta{
	text-align:left;
}
#topPage.renewal-2019 #sb_instagram .sbi_caption{
    font-size: 1.5rem !important;
}
#topPage.renewal-2019 #sb_instagram .sbi_meta span,
#topPage.renewal-2019 #sb_instagram .sbi_meta span svg {
    margin: 0 5px !important;
    font-size: 1.5rem !important;
}
#topPage.renewal-2019 article#recommended > section{
	position:relative;
	z-index:10;
}
#topPage.renewal-2019 article#recommended #rec-01 .ttl-box-km {
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ttl-rec-01.png) no-repeat 0% 50%;
}
#topPage.renewal-2019 article#recommended #rec-02 .ttl-box-km {
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ttl-rec-02.png) no-repeat 0% 50%;
}
#topPage.renewal-2019 article#recommended #rec-03 .ttl-box-km {
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ttl-rec-03.png) no-repeat 0% 50%;
}
#topPage.renewal-2019 article#recommended #rec-04 .ttl-box-km {
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ttl-rec-04.png) no-repeat 0% 50%;
}
#topPage.renewal-2019 article#recommended #rec-05 .ttl-box-km {
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ttl-rec-05.png) no-repeat 0% 50%;
}
#topPage.renewal-2019 article#recommended #rec-06 .ttl-box-km {
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ttl-rec-06.png) no-repeat 0% 50%;
}
#topPage.renewal-2019 article#recommended #rec-07 .ttl-box-km {
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ttl-rec-07.png) no-repeat 0% 50%;
}
#topPage.renewal-2019 article#recommended #rec-08 .ttl-box-km {
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ttl-rec-08.png) no-repeat 0% 50%;
}
#topPage.renewal-2019 article#recommended #rec-09 .ttl-box-km {
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ttl-rec-09.png) no-repeat 0% 50%;
}

#topPage.renewal-2019 article#recommended .bg-rec{
	position:relative;
	width:100%;
	height:1px;
}
#topPage.renewal-2019 article#recommended .bg-rec:before{
	content:"";
	width:100%;
	position:absolute;
}
#topPage.renewal-2019 article#recommended .bg-01:before{
	height:1016px;
	top:-660px;
	left:0;
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/bg-rec-01.png) no-repeat 50% 0%;
}
#topPage.renewal-2019 article#recommended .bg-02:before{
	height:1379px;
	top:95px;
	left:0;
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/bg-rec-02.png) no-repeat 50% 0%;
}
#topPage.renewal-2019 article#recommended .bg-03:before{
	height:1554px;
	top:-125px;
	left:0;
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/bg-rec-03.png) no-repeat 50% 0%;
}
#topPage.renewal-2019 article#recommended .bg-04:before{
	height:1016px;
	top:360px;
	left:0;
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/bg-rec-04.png) no-repeat 50% 0%;
}


#topPage.renewal-2019 article#recommended #rec-02 .ttl-box-km {
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ttl-rec-02.png) no-repeat 0% 50%;
}
#topPage.renewal-2019 article#recommended .ttl-box-km{
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
	flex-wrap: wrap;
	align-content: space-between;
	box-sizing: border-box;
	justify-content: space-between;
}
#topPage.renewal-2019 article#recommended .ttl-box-km h2 i,
#topPage.renewal-2019 article#recommended #rec-01 h3 i,
#topPage.renewal-2019 article#recommended #rec-02 h3 i,
#topPage.renewal-2019 article#recommended #rec-03 h3 i{
	font-style:normal;
	line-height: 1.7;
}
#topPage.renewal-2019 article#recommended .ttl-box-km h2,
#topPage.renewal-2019 article#recommended #rec-01 h3,
#topPage.renewal-2019 article#recommended #rec-02 h3,
#topPage.renewal-2019 article#recommended #rec-03 h3{
	font-size:2.4rem;
	letter-spacing: 0px;
}
#topPage.renewal-2019 article#recommended .ttl-box-km h2 img,
#topPage.renewal-2019 article#recommended #rec-01 h3 img,
#topPage.renewal-2019 article#recommended #rec-02 h3 img,
#topPage.renewal-2019 article#recommended #rec-03 h3 img{
	vertical-align: middle;
    margin: 0 0 10px 30px;
}
#topPage.renewal-2019 article#recommended .ttl-box-km p{
	line-height:2.2;
	max-width: 920px;
}
#topPage.renewal-2019 article#recommended #rec-01 .ttl-box-km h3 i{
	font-size:4.5rem;
}
#topPage.renewal-2019 article#recommended #rec-02 .ttl-box-km h3 i{
	font-size:4.5rem;
}
#topPage.renewal-2019 article#recommended #rec-03 .ttl-box-km h3 i{
	font-size:4.3rem;
}
#topPage.renewal-2019 article#recommended #rec-03 .ttl-box-km .red2{
	font-weight: bold;
}
#topPage.renewal-2019 article#recommended #rec-04 .ttl-box-km h2 i{
	font-size:4.5rem;
}
#topPage.renewal-2019 article#recommended #rec-04 .ttl-box-km {
	margin-bottom: -30px;
}
#topPage.renewal-2019 article#recommended #rec-04 h3{
	margin: 44px 0 10px;
}
#topPage.renewal-2019 article#recommended #rec-04 .inner{
    padding-right: 340px;
	background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/img-rec-04-step-01.png) no-repeat 90% 0%;
    width: 100%;
	min-height:368px;
	margin-bottom: 10px;
    box-sizing: border-box;
	padding:1px 340px 1px 0;
}
#topPage.renewal-2019 article#recommended #rec-06 .inner,
#topPage.renewal-2019 article#recommended #rec-07 .inner,
#topPage.renewal-2019 article#recommended #rec-08 .inner,
#topPage.renewal-2019 article#recommended #rec-09 .inner {
    max-width: 1020px;
}
#topPage.renewal-2019 article#recommended #rec-05 .ttl-box-km h2 i{
	font-size:4.5rem;
}
#topPage.renewal-2019 article#recommended #rec-06 .ttl-box-km h2,
#topPage.renewal-2019 article#recommended #rec-07 .ttl-box-km h2{
	font-size:4rem;
}
#topPage.renewal-2019 article#recommended #rec-08 .ttl-box-km h2,
#topPage.renewal-2019 article#recommended #rec-09 .ttl-box-km h2{
	font-size:3.8rem;
}
#topPage.renewal-2019 article#recommended #rec-03 h3 .label,
#topPage.renewal-2019 article#recommended .ttl-box-km h2 .label {
    color: #fff;
    background: #ec576b;
    font-size: 1.6rem;
    text-align: center;
    display: inline-block;
    vertical-align: text-bottom;
    padding: 3px 12px;
    margin-left: 5px;
    border-radius: 5px;
}
#topPage.renewal-2019 article#recommended #rec-03 h3 .pc,
#topPage.renewal-2019 article#recommended .ttl-box-km h2 .pc{
	display:inline-block;
}
#topPage.renewal-2019 article#recommended #rec-02,
#topPage.renewal-2019 article#recommended #rec-05{
    margin-bottom: 40px;
}
#topPage.renewal-2019 article#recommended .km-box .inner{
    max-width: 1080px;
    margin: 0 auto;
}
#topPage.renewal-2019 article#recommended .km-box .iframe-box{
    max-width: 950px;
    margin: 0 auto 55px;
    text-align: center;
}
#topPage.renewal-2019 article#recommended .step-list.flex.c02{
    max-width: 720px;
    margin: 0 auto;
}
#topPage.renewal-2019 article#recommended .step-list.flex.c03 {
    max-width: 1040px;
    margin: 0 auto;
}
#topPage.renewal-2019 article#recommended .step-list.flex.c02 > *,
#topPage.renewal-2019 article#recommended .step-list.flex.c03 > *{
    padding: 0 20px;
}
#topPage.renewal-2019 article#recommended .step-list p {
    margin: 6px 0 28px;
    line-height: 1.7;
    letter-spacing: 1.2px;
}
#topPage.renewal-2019 article#recommended .step-list p .small{
    font-size: 1.3rem;
    line-height: 1.7;
    display: inline-block;
    margin-top: 5px;
}
#topPage.renewal-2019 article#recommended .km-box p.inner {
    margin: -25px auto 12px;
    max-width: 1000px;
}
#topPage.renewal-2019 article#recommended .point-list{
	margin-top:-20px;
}
#topPage.renewal-2019 article#recommended .point-list li h3 img.sp{
	display:none;
}
#topPage.renewal-2019 article#recommended .point-list li h3 img.pc{
	display:block;
	margin-bottom: 16px;
	position: relative;
    left: -5px;
}
#topPage.renewal-2019 article#recommended .point-list li h3{
	font-size:2.4rem;
	line-height:1.3;
	margin:5px 0;
}
#topPage.renewal-2019 article#recommended .point-list li {
    position: relative;
    padding-right: 330px;
	min-height:193px;
	margin-bottom:30px;
}
#topPage.renewal-2019 article#recommended .point-list li figure {
    position: absolute;
    right: 0;
    top: 0;
}

#topPage.renewal-2019 article#instagram .h-sat span img.icon {
	margin-right: 15px;
	margin-bottom: 12px;
	width: 74px;
}
#topPage.renewal-2019 article#recommended .bnr{
	margin-top: 55px;
}
#topPage.renewal-2019 article#instagram{
	padding-top:1px;
}
#topPage.renewal-2019 article#instagram .alnC{
	margin-bottom:25px;
}
#topPage.renewal-2019 article#instagram h2{
    margin: 220px auto 30px;
}
#topPage.renewal-2019 article#instagram .h-sat span{
	margin-bottom:15px;
}
#topPage.renewal-2019 article#faq h2{
	padding-bottom:0
}
#topPage.renewal-2019 article#faq {
    padding: 45px 0 48px;
    width: 98%;
    margin: 30px auto 80px;
    max-width: 1340px;
}
#topPage.renewal-2019 #faq a.btn span {
    border: 1px solid #fff;
    background: none;
    transition: all .4s;
    color: #fff !important;
    line-height: 2.6;
    border-radius: 2em;
    font-size: 1.8rem;
    font-weight: normal;
    font-family: inherit;
}
#topPage.renewal-2019 article#column {
    background: url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/bg-column.jpg) no-repeat 0% 50% / cover;
    padding: 80px 0;
}
#topPage.renewal-2019 article#column h2 {
    margin-bottom: 70px;
}
#topPage.renewal-2019 #column .inner {
    max-width: 1070px;
    margin: 0 auto;
}
#topPage.renewal-2019 #column .flex section time{
	color:#a1a1a1;
	display:inline-block;
	vertical-align:middle;
	font-size:1.6rem;
}
#topPage.renewal-2019 #column section .cat {
    display: inline-block;
    background-color: #4ec5c1;
    color: #fff;
    padding: 2px 10px 0;
    font-size: 1.3rem;
    margin: 0 10px 4px 0;
    text-align: center;
    min-width: 70px;
}
#topPage.renewal-2019 #column .flex section h3{
	font-size:2rem;
}
#topPage.renewal-2019 #column .flex section {
    background: #fff;
    border-radius: 10px;
    width: 32.6%;
}
#topPage.renewal-2019 #column .flex section > div{
    padding: 15px 24px;
}
#topPage.renewal-2019 #column .flex figure img{
	max-width:100%;
	height:auto;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
#topPage.renewal-2019 #column .alnC {
    margin: 58px auto;
}
#rec-03 .inner > section:last-child {
	margin-bottom:0;
}
#rec-03 .inner > section {
    position: relative;
	min-height:255px;
    margin-bottom: 70px;
}
#rec-03 .inner > #point-04 {
    margin-bottom: 25px;
}
#rec-03 .inner > section.odd > div {
    margin-right: 35%;
    padding-right: 70px;
}
#rec-03 .inner > section > div {
    display: block;
    width: 100%;
    min-height: 256px;
    box-sizing: border-box;
    width: 62%;
    padding: 50px 35px 70px;
    background: #ebf6f5;
    position: relative;
}/*
#rec-03 .inner > section > div > div {
    display: table-cell;
    vertical-align: middle;
}*/
#rec-03 .inner > section figure{
	position: absolute;
	top: -20px;
	z-index: 5;
	width:45%;
}
#rec-03 .inner > section figure:before{
	content:"";
	width:83px;
	height:83px;
	position:absolute;
}
#rec-03 .inner > section.odd figure:before{
	top:-15px;
	right:50px;
}
#rec-03 .inner > section.even figure:before{
	top:-20px;
	left:20px;
}
#rec-03 .inner > #point-01 figure:before{
	background:url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ico-point-01-km.png) no-repeat 50% 50%;
}
#rec-03 .inner > #point-02 figure:before{
	background:url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ico-point-02-km.png) no-repeat 50% 50%;
}
#rec-03 .inner > #point-03 figure:before{
	background:url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ico-point-03-km.png) no-repeat 50% 50%;
}
#rec-03 .inner > #point-04 figure:before{
	background:url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ico-point-04-km.png) no-repeat 50% 50%;
}
#rec-03 .inner > section h4{
	display:inline-block;
	border-bottom:2px solid #767b7a;
	font-size:2.4rem;
	margin-bottom:10px;
	line-height: 1.5;
}
#rec-03 .inner > section h4 i{
	font-style:normal;
	line-height: 1.1;
	font-size:3.4rem;
}
#rec-03 .inner > section.odd figure{
	left: 0;
}
#rec-03 .inner > section.even figure {
    right: -30px;
}
#rec-03 .inner > section.odd > div{
	margin-left: 38%;
	padding-left: 75px;
}
#rec-03 .inner > section.even > div {
    margin-right: 40%;
    padding-right: 80px;
    padding-left: 90px;
}
#rec-03 .inner > section > div p.alnR {
    margin: 2px 0 -38px;
}
#rec-04 .inner h4 {
    margin: 25px 0 10px;
}

#rec-04 .inner p {
	line-height:2.2;
}
#topPage.newdesign #faq a.btn span{
	position:relative;
}
#topPage.renewal-2019 #faq a.btn span::after {
    content: "";
	background:url(/lp/wp/wp-content/themes/ecco-2017/images/top/2019/ico-arrow.png) no-repeat 50% 50%;
    width:7px;
	height:12px;
    position: absolute;
    right: 30px;
    top: 50%;
    margin-top: -6px;
    line-height: 1;
}

/* ---------------------- designs  ---------------------------- */

header.designs{
    background:url("../images/designs/bg_01.jpg") top center no-repeat;
    height:269px;
    text-align: center;
}
header.designs h2,
header.designs p.clause
{
    margin-top: 62px;
}
header.designs p.clause span {
    padding: 0 0 20px;
}
.cont-designs {
    background: #f6f6f6;
}
#art-designs .inner-box {
    position: relative;
    max-width: 1100px;
    margin: 0 auto;
}
#art-designs .sec-designs {
    background: #fff;
    margin: 30px auto 90px;
    padding: 40px 0;
}
#art-designs .lead {
    font-size: 1.5rem;
    padding: 0 45px 40px;
}
#art-designs .design-list {
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
}
#art-designs .design-list li {
    width: calc(33.3333%);
    padding: 0 25px 35px;
    box-sizing: border-box;
}
#art-designs .design-list .img {
    text-align: center;
}
#art-designs .design-list .img img{
    width:100%;
    height:auto;
}
#art-designs .design-list .anim{
    position: relative;
    text-align: center;
}
#art-designs .design-list .anim::before{
    content: "";
    display: block;
    position: absolute;
    top: 17px;
    left: 0px;
    width: 224px;
    height: 57px;
    background: url(../images/designs/anim.png) no-repeat center center;
}
#art-designs .design-list .anim img{
    width:100%;
    height:auto;
}
#art-designs .design-list a:hover .anim::before{
    opacity: 0.9;
    z-index: 1;
}
#art-designs .design-list .design-ttl {
    text-align: center;
    padding: 5px 0 15px;
}
#art-designs .design-list .design-ttl-en {
    font-family: 'Satisfy', cursive ,serif;
    font-size: 3rem;
    background: url(../images/designs/ttl-line.png) no-repeat center bottom;
}
#art-designs .design-list .design-ttl .design-ttl-ja {
    font-size: 1.4rem;
    display: block;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    line-height: 1;
}

/* ---------------------- law  ---------------------------- */

header.law {
    background: url(../images/law/bg_01.jpg) top center no-repeat;
    height: 269px;
    text-align: center;
}

header.law h2,
header.law p.clause
{
    margin-top: 62px;
}

.law-ttl {
    background: #948068;
    font-weight: normal;
    color: #fff;
    font-size: 2.3rem;
    padding: 5px 10px;
    line-height: 1.7;
    position: relative;
    box-sizing: border-box;
    margin: 40px 0 20px;
}

#art-law .tokusyo {
    border-collapse: collapse;
    width: 100%;
    margin: 0 0 90px;
    table-layout: fixed;
}

#art-law .tokusyo th {
    background-color: #f4f4f4;
    border: 1px solid #ccc;
    text-align: left;
    padding: 10px;
    font-size: 1.6rem;
    width: 27%;
    font-weight: bold;
    color: #666;
}

#art-law .tokusyo td {
    border: 1px solid #ccc;
    background: #fff;
    color: #333;
    padding: 10px;
    font-size: 1.6rem;
    width: 73%;
}

/* ---------------------- privacy  ---------------------------- */

header.privacy {
    background: url(../images/privacy/bg_01.jpeg) top center no-repeat;
    height: 269px;
    text-align: center;
}
header.insurance {
    background: url(../images/insurance/bg_01.jpeg) top center no-repeat;
    height: 269px;
    text-align: center;
}
header.privacy h2,
header.privacy p.clause,
header.insurance p.clause
{
    margin-top: 62px;
}
#art-privacy .sec-privacy dl{
    background: #fff;
    padding: 20px 50px;
    margin-bottom: 60px;
    margin-top: 50px;
    padding-bottom: 30px;
}
#art-privacy .sec-privacy dl dt{
    margin-top: 2em;
    font-size: 1.4rem;
    border-bottom: .15em solid #f1f1f1;
}
#art-privacy .sec-privacy dl dt p{
    font-size: 1.7rem;
    font-weight: bold;
}
#art-privacy .sec-privacy dl dd{
    margin-top: 1em;
}
#art-privacy .sec-privacy dl dd a{
    color: #0cc9ff;
    text-decoration: underline;
}
#art-privacy .sec-privacy dl dd p.ttl{
    font-size: 1.7rem;
    font-weight: bold;
}

/* ==========================================================================
   footer
   ========================================================================== */
#footer_page_top{
    background: none;
    color: #0d0d0d;
    background-color: #fff;
}
#footer_page_top .content_box{
    width: 95%;
    max-width: 1180px;
    margin: 0 auto;
    position: relative;
}
#footer_page_top p,
#footer_page_top a{
    color: #0d0d0d;
}
#footer_page_top .logo_area{
    border-bottom: 1px solid #dedede;
}
#footer_page_top .logo{
    float: none;
    display: block;
    margin: 0 auto;
    width: 100%;
    text-align: center;
    padding: 0px;
    padding-bottom: 5%;
    padding-top: 5%;
}
#footer_page_top .logo a{
    display: block;
    margin: 0 auto;
    width: 22%;
    margin-bottom: 3.5%;
}
#footer_page_top .menu_area{
    display: -ms-flexbox;
    -js-display: flex;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 3%;
    margin-bottom: 3%;
}
#footer_page_top .cont-01 nav{
    display: -ms-flexbox;
    -js-display: flex;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
#footer_page_top .cont-01{
    width: 59.4%;
}
#footer_page_top .cont-01 p,
#footer_page_top .cont-01 ul li{
    line-height: 1em;
}
#footer_page_top .cont-01 p a,
#footer_page_top .cont-01 ul li a{
    display: inline-block;
    line-height: 2em;
    font-size:15px;
    font-size:1.16vw;
}
#footer_page_top .cont-01 p a{
    padding-right: 1em;
    position: relative;
}
#footer_page_top .cont-01 p a::after{
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0%;
    transform: translateY(-50%);
    width: 0.4em;
    max-width: 6px;
    height: 0px;
    padding-top: 9px;
    background: url(../images/top/2021/ico_arrow_left.png) center center no-repeat;
    background-size: contain;
}
#footer_page_top .cont-01 ul li a{
    padding-left: 1em;
    position: relative;
}
#footer_page_top .cont-01 ul li a::before{
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0.3em;
    transform: translateY(-50%);
    width: 0.4em;
    max-width: 8px;
    height: 0px;
    padding-top: 16px;
    background: url(../images/top/2021/ico_menu.png) center center no-repeat;
    background-size: contain;
}
#footer_page_top .cont-01 ul li:nth-last-of-type(1) a::before{
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0.3em;
    transform: translateY(-70%);
    width: 0.4em;
    max-width: 8px;
    height: 0px;
    padding-top: 9px;
    background: url(../images/top/2021/ico_menu2.png) center center no-repeat;
    background-size: contain;
}
#footer_page_top .cont-02{
    width: 36%;
    position: relative;
}
#footer_page_top .cont-02 .insta{
    position: absolute;
    top: 10%;
    right: 10%;
    display: block;
    width: 8.3%;
}
#footer_page_top .cont-02 .platinum{
    display: block;
    width: 62%;
    margin-bottom: 8%;
}
#footer_page_top .cont-02 address{
    letter-spacing: 0.1em;
}
#footer_page_top .copy{
    color: #fff;
    background: #474747;
}

@media screen and (min-width: 751px) {
    #footer_page_top p,
    #footer_page_top a{
        border-bottom: none!important;
    }
}
@media screen and (min-width: 1300px) {
    #footer_page_top .cont-01 p a,
    #footer_page_top .cont-01 ul li a{
        font-size:15px;
    }
}
@media screen and (max-width: 750px) {
    #footer_page_top .content_box{
        width: 90%;
    }
    #footer_page_top .cont-01 p a,
    #footer_page_top .cont-01 ul li a{
        font-size:20px;
        font-size:2.67vw;
    }
    #footer_page_top .logo a{
        width: 49.9%;
        margin-bottom: 8.3%;
    }
    #footer_page_top .logo{
        padding-bottom: 15%;
    }
    #footer_page_top .logo a picture img{
        width:100%;
        height:auto;
    }
    #footer_page_top .menu_content{
        width: 100%;
    }
    #footer_page_top .menu_area{
        margin-top: 0px;
        margin-bottom: 4%;
    }
    #footer_page_top .cont-01{
        width: 100%;
    }
    #footer_page_top .cont-01 .menu,
    #footer_page_top .cont-01 .menu ul{
        width: 100%;
        display: -ms-flexbox;
        -js-display: flex;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    #footer_page_top .cont-01 p, 
    #footer_page_top .cont-01 ul li{
        width: 50%;
        padding: 2em 0px;
        padding-left: 5%;
        border-bottom: 1px solid #cecece;
        position: relative;
    }
    #footer_page_top .cont-01 ul li{
        background: #f3f4f5;
    }
    #footer_page_top .cont-01 ul li a::before{
        display: none;
    }
    #footer_page_top .cont-01 ul li a{
        padding-left: 0px;
    }
    #footer_page_top .cont-01 p a::after{
        display: none;
    }
    #footer_page_top .cont-01 p::after,
    #footer_page_top .cont-01 ul li::after{
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        right: 1.5em;
        transform: translateY(-50%);
        width: 0.4em;
        max-width: 10px;
        height: 0px;
        padding-top: 17px;
        background: url(../images/top/2021/ico_arrow_left_sp.png) center center no-repeat;
        background-size: contain;
    }
    #footer_page_top .cont-01 p:nth-of-type(2n-1), 
    #footer_page_top .cont-01 ul li:nth-of-type(2n-1){
        border-right: 1px solid #cecece;
    }
    #footer_page_top .cont-01 .menu:nth-of-type(2) ul li:nth-last-of-type(1){
        border-bottom: none;
    }
    #footer_page_top .cont-01 .menu:nth-of-type(3){
        border-top: 1px solid #cecece;
    }
    #footer_page_top .cont-01 .menu:nth-of-type(2) > p,
    #footer_page_top .cont-01 .menu:nth-of-type(3) > p{
        width: 100%;
    }
    #footer_page_top .cont-01 p a, 
    #footer_page_top .cont-01 ul li a{
        width:80%;
        font-size:2vw;
        line-height: 1em;
    }
    #footer_page_top .cont-02{
        width: 90%;
        margin: 0 auto;
        margin-top: 6%;
    }
    #footer_page_top .cont-02 .insta{
        width: 5.1%;
        top: auto;
        bottom: 10%;
    }
    #footer_page_top .copy{
        padding: 1% 0px;
    }
    #footer_page_top{
        padding-bottom: 0px;
    }
}




/*
---------------------------------------
1500px以上
---------------------------------------
*/
@media screen and (min-width: 1500px) {
/*--ここから記述--*/

#topPage.newdesign article#special {
    background-size: 100% auto !important;
}
#topPage.newdesign article#faq {
    background-size: 100% auto !important;
}
#topPage.newdesign article#pickup{
	background-size:cover !important;
}
#topPage.newdesign article#recommend{
	background-size:cover !important;
}
div.footer_top{
	background-size:cover !important;
}
#topPage.renewal-2019 article#recommended{
	background-size:100% auto;
}


/*--ここまで--*/
}

/*
---------------------------------------
1700px以上
---------------------------------------
*/
@media screen and (min-width: 1700px) {
/*--ここから記述--*/

#topPage.renewal-2019 article#recommended .bg-rec:before{
	background-size:100% auto !important;
	height:2500px;
}
#topPage.renewal-2019 article#point::before{
	background-size:100% auto !important;
}
header.top,
.letter-box{
	background-size: cover;
}
/*--ここまで--*/
}

/*-- 20220330 送信完了 --*/
#contact .thanks-box {
    background: #eee;
    padding: 50px 0;
    margin: 45px auto;
}
#contact .thanks-box p {
    margin:1.5em auto 1.5em;
}