

@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);


body {
  background-color: #fff;
  font-weight: 400;
  font-size: 16px;
  color: #111111;

  -webkit-font-smoothing: antialiased;
  -webkit-overflow-scrolling: touch;
}



/* Titles */
h1, h2, h3, h4, h5, h6 {

    font-weight: 300;
    color: #111111;
    font-family: 'Noto Sans Japanese', sans-serif;
}



/* Paragraph & Typographic */
p {
    line-height: 27px;
    margin-bottom: 25px;
}

.centered {
    text-align: center;
}

/* Links */
a {
    color: #1b4aff;
    word-wrap: break-word;
    -webkit-transition: color 0.1s ease-in, background 0.1s ease-in;
    -moz-transition: color 0.1s ease-in, background 0.1s ease-in;
    -ms-transition: color 0.1s ease-in, background 0.1s ease-in;
    -o-transition: color 0.1s ease-in, background 0.1s ease-in;
    transition: color 0.1s ease-in, background 0.1s ease-in;
}

a:hover,
a:focus {
    color: #0021a1;
    text-decoration: none;
    outline: 0;
}

a:before,
a:after {
    -webkit-transition: color 0.1s ease-in, background 0.1s ease-in;
    -moz-transition: color 0.1s ease-in, background 0.1s ease-in;
    -ms-transition: color 0.1s ease-in, background 0.1s ease-in;
    -o-transition: color 0.1s ease-in, background 0.1s ease-in;
    transition: color 0.1s ease-in, background 0.1s ease-in;
}

 hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/* ctaボタン */
.cta_height{
  margin: 40px 0;
  text-align: center;
}

.cta_btn{
  color: #fff;
  background-color: #1b4aff;
  padding: 28px 48px;
  font-size: 130%;
  font-weight: 800;
  border-radius: 24px;
  letter-spacing: 1px;
  box-shadow: 0 5px 0 #0021a1;
  position: relative;
  top: 0;
  -moz-transition: 100ms all linear;
  -o-transition: 100ms all linear;
  transition: 100ms all linear;
  display: inline-block;
}

.cta_btn a{
  color: #ffffff;
  text-align: center;
}

.cta_btn:hover {
  cursor: pointer;
  color: white;
  box-shadow: none;
  top: 6px;
  text-decoration: none;
}

.cta_height.last{
  margin: 0;
}

.last .cta_btn{
  font-size: 170%;
  padding: 35px 68px;
}

.cta_height.float_btn{
  margin: 0;
  line-height: 1.4;
}

.float_btn .cta_btn{
  font-size: 130%;
  padding: 19px 33px;
  line-height: 1.4;
}


.cta_height.seisaku_btn{
  line-height: 1.4;
  margin-bottom: 120px;
}

.seisaku_btn .cta_btn{
  font-size: 170%;
  padding: 20px 94px;
  background-color: #bf7022;
  box-shadow: 0 5px 0 #562c07;
}

.seisaku_btn .cta_btn:hover{
  box-shadow: none;
}

.fv_cta{
  position: relative;
  bottom: 30px;
  font-size: 130%;
}

.fv_cta .cta_btn{
  padding: 34px 54px;
  border-radius: 30px;
}









/* ==========================================================================
   Wrap Sections
   ========================================================================== */

#precedent{
  background-color:#ffd01b;
  background: repeat url("../img/new/bg_yellow.jpg");

  padding: 4% 0;
}

.precedent_wrap{
  max-width: 1440px;
  margin: auto;
  padding: 24px 4%;
}

.first_twentytwenty{
  margin-bottom: 24px;
}

.first_twentytwenty p{
  text-align: center;
  font-size: 130%;
  font-weight: 700;
  margin: 24px 0;
  color: #111111;
  font-family: 'Noto Sans Japanese', sans-serif;
}

.half{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.half .twentytwenty-wrapper{
  width: calc(50% - 8px);
}

.half .twentytwenty-container{

}

.twentytwenty-container img{
  width:100%;
  border-radius: 12px;
}

.twentytwenty-handle{
  background-color: #ffd01b;
}

.twentytwenty-horizontal .twentytwenty-handle:before{
  margin-bottom: 27px;
}

.twentytwenty-horizontal .twentytwenty-handle:after{
  margin-top: 29px;
}

.twentytwenty-handle{
  height: 48px;
  width: 48px;
}

.twentytwenty-right-arrow{
  border-left: 8px solid #ffffff;
  margin-right: -18px;
}

.twentytwenty-left-arrow {
  border-right: 8px solid #ffffff;
  margin-left: -18px;
}

.twentytwenty-overlay:hover {
  background: rgba(0, 0, 0, 0.1);
  border-radius: 12px;
}

.jirei{
  text-align: center;
  font-size: 130%;
}

.jirei_text{
  color: #111;
  display: inline;
}

.jirei_link{
  color: #111;
  font-weight: 600;
  background: linear-gradient(transparent 10%, #ffffff 30%);
  display: inline-block;
}

.jirei_link:hover{
  color: #1b4aff;
}







#headerwrap {
	text-align:center;
	width: 100%;
  background: #e5e5e5;
}

@keyframes bg-slider {
	from { background-position: 100% 0; } /* 画像の右端を表示した状態からスタート */
  to { background-position: 0 0; } /* 左端まで移動 */
}


#headerwrap .container{
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  padding: 16px 0 100px;

}

#headerwrap h1 {
	margin-top: 8px;
	color: white;
	font-size: 140px;
	font-weight: 700;
	letter-spacing: 3px;
  width: 100%;
}

#headerwrap h2 {
	color: white;
	font-size: 50px;
	font-weight: 100;
	letter-spacing: 2px;
}

.tocho{
margin-bottom:100px;
}

.totoku{
max-width: 1150px;
}

/* 新スリーポイント */

#three_point{
  background: #f7f7f7;
  padding: 0 4%;
}


.three_point_wrap{
  max-width: 1200px;
  padding-top: 6%;
  padding-bottom: calc(6% - 24px);
  display: flex;
  margin: auto;
  gap: 10%;
}

.three_point_contant{
  width: calc(100% / 3);
}

.three_point_contant h2{
  font-weight: 800;
  text-align: center;
  margin: 8px 0;
  font-size: 190%;
}

.three_point_contant p{
  font-size: 94%;
  line-height: 24px;
  word-break: auto-phrase;
}

.three_point_img{
  width: 120px;
  margin: auto;
}

.three_point_img img{
  width: 100%;
}




/* 新チェックリスト */
#checklist{
  background: repeat url("../img/new/bg_yellow.jpg");
}

.checklist_wrap{
  max-width: 1300px;
  margin: auto;
  padding: 4%;
}

.checklist_contant ul{
  display: flex;
  flex-wrap: wrap;
  background: none;
  justify-content: space-evenly;
  gap:8px;
  margin: 0;
  padding: 16px 0;
}

.checklist_contant ul li{
  width: calc(50% - 8px);
  font-size: 90%;
  font-weight: 600;
  background: #fff;
  border-radius: 16px;
  padding: 20px;
  color: #1f1f1f;
  line-height: 1.4;
  display: flex;
  align-items: center;
}

.checklist_contant ul li span{
  background: linear-gradient(transparent 50%, #ffe78c 0%);
  font-weight: bold;
}


.checklist_contant ul li img{
  width: 36px;
  margin-right: 4px;
}
.checklist_contant ul li p{
  margin: 0;
}



/* 新ベネフィット */
#benefit{
  background: repeat url("../img/new/bg_wh.jpg");
  padding: 0 4%;
  padding: 40px 0;
}

.benefit_wrap{
  max-width: 1200px;
  margin: auto;
}

.benefit_contant{
  display: flex;
  align-items: center;
  gap: 56px;
  padding: 4%;
}

.benefit_contant:nth-child(even){
  flex-direction: row-reverse;
}

.benefit_img{
  width: 47%;
}

.benefit_text{
  width: 53%;

}

.benefit_text h2{
  font-size: 200%;
  font-weight: 700;
  color: #111;
}

.benefit_text p{
  color: #111;
  word-break: auto-phrase;
}



/* 新ソフト比較 */
#comparison{
  /* background: #d4d4d4; */
  background: repeat url("../img/new/bg.jpg");

}

.comparison_wrap{
  max-width: 1080px;
  margin: auto;
  padding: 5% 4%;
}

.comparison_img{
  margin: auto;
  margin-bottom: 24px;
}

.comparison_text{
  background: #fff;
  padding: 16px 24px;
  border-radius: 16px;
  display: flex;
  align-items:center;
  gap: 16px;
}

.comparison_text .light{
  width: 110px;
}

.comparison_text h3{
  font-size: 130%;
  line-height: 1.4;
  font-weight: 600;
  margin: 8px 0;
}


/* 新料金 */
#fee{
  background: repeat url("../img/new/bg_wh.jpg");
  padding: 4%;
}

.fee_wrap{
  max-width: 960px;
  margin: auto;
}

.fee_wrap h3{
  font-weight: 800;
  text-align: center;
  font-size: 180%;
  margin: 16px 0;
  line-height: 1.5;
}

.fee_contant{
  display: flex;
  gap: 40px;
  margin: 24px auto;

}

.fee_img{
  width: 50%;
}

.fee_img a:hover{
  opacity: .9;
  transition: 0.3s ;
}

.fee_img img{
  border: 3px solid #f2f2f2;
}


.fee_img img:hover{
  border: 10px solid #ffd01b;
  border-radius: 15%;
  transition: 0.3s ;
}

.fee_wrap p{
  text-align: center;
}

/* 新ご利用の流れ */

#flow{
  background: repeat url(../img/new/bg_yellow.jpg);
  padding: 4%;
}

.flow_wrap{
  max-width: 1200px;
  margin: auto;
}

.flow_wrap h3 {
  font-weight: 800;
  text-align: center;
  font-size: 200%;
  margin: 16px 0;
  line-height: 1.5;
}

.flow_contant{
  display: flex;
  flex-direction: column;
}

.flow_column{
  display: block;
  position: relative;
  background: #ffffff;
  padding: 24px 32px;
  border-radius: 24px;
  margin-bottom: 40px;
}

.flow_column_wrap{
  display: flex;
  align-items: center;
  gap: 8px;
}


.flow_step{
  width:  10%;
  text-align: center;
}

.flow_illust{
  width: 22%;
}

.flow_title {
  width: 8%;
}

.flow_text{
  width: 60%;
}

.flow_title h4{
  font-family: 'Noto Sans Japanese', sans-serif;
  font-size: 220%;
  font-weight: 800;
  text-align: center;
}


.flow_illust img{
  width: 100%;
}

.flow_step img{
  width: 90%;
}

.flow_text p{
  margin: 0;
  padding-left: 16px;
}

.flow_text p a{
  text-decoration: underline;
}



.flow_arrow{
  content: ' ';
  height: 0;
  position: absolute;
  width: 0;
  border: 25px solid transparent;
  border-top-color: #ffffff;
  left: 50%;
  margin-left: -25px;
  margin-top: 24px;
}

.flow_send{
  margin: 8px 0;
}

.flow_send_wrap{
  padding: 16px;
}


.flow_send_image{
  transition: transform .5s, opacity .5s;
}

.flow_send img{
 max-width: 580px;
 width: 100%;
 border: 1px solid #111111;
 border-radius: 8px;
}

.flow_send p{
 margin: 8px 0;
}

.flow_send p.flow_send_btn{
  margin-bottom: 16px;
}

.flow_send a{
  border: 1px solid;
  padding: 8px 16px;
  border-radius: 24px;
}

.accordion-001 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    font-size: 120%;
    padding: 16px 24px;
    border-radius: 16px;
    background-color: #ffd01b;
    font-weight: 600;
    cursor: pointer;
}

.accordion-001 summary::-webkit-details-marker {
    display: none;
}

.accordion-001 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 14px;
    height: 14px;
    margin-left: 10px;
    border-bottom: 3px solid;
    border-right: 3px solid;
    content: '';
}

.accordion-001[open] summary::after {
    transform: rotate(225deg);
}

.accordion-001 p {
    transform: translateY(-10px);
    opacity: 0;
    padding: 4px 0;
    color: #080808;
    transition: transform .5s, opacity .5s;

}

.accordion-001 img{
  transition: transform .5s, opacity .5s;
}

.accordion-001[open] p {
    transform: none;
    opacity: 1;
}

/* 新利用者の声 */
#voice{
  background: repeat url(../img/new/bg_wh.jpg);
  padding: 4%;
}

.voice_wrap{
  max-width: 980px;
  margin: auto;

}

.voice_contant{
  background: #ffffff;
  border-radius: 116px;
  padding: 32px;
  display: flex;
  align-items: center;
  gap: 24px;
  margin-bottom: 20px;
}

.voice_image{
  width: 23%;
}

.voice_image img{
  width: 100%;
}

.voice_taxt{
  width: 77%;
}

.voice_taxt h3{
  font-weight: 700;
  margin-top: 0;
}

.voice_taxt p{
  margin-bottom: 0;
}

.voice_taxt h4{
  font-weight: 700;
  margin-top: 8px;
  font-size: 110%;
}


/* White Wrap */

#w {
	background: #ffffff;
	padding-top: 35px;
	padding-bottom: 36px;
	text-align: center;
}

#w h3 {
	font-weight: 700;
	color: #7b7b7b;
	letter-spacing: 1px;
}

#w bold {
	color: #2f2f2f;
}

/* White Wrap */

.top_shadow{
  box-shadow: 0 -17px 40px -5px #f6f6f6;
}

#about {
	background: #ffffff;
	padding-top: 35px;
	padding-bottom: 35px;
	text-align: center;
}

#about .container{
  max-width: 1100px;
}


#about h2 {
  font-weight: 900;
    font-size: 220%;
    letter-spacing: 2px;
    margin: 16px 0;
  line-height: 150%;
}

#about bold {
	color: #2f2f2f;
}

#about_new{
  background: #ffffff;
	padding-top: 32px;
	padding-bottom: 32px;
}

.about_wrap{
  max-width: 1100px;
  margin: auto;
  padding: 4%;
}

.about_wrap h2{
  font-weight: 900;
  font-size: 260%;
  letter-spacing: 2px;
  margin: 0;
  line-height: 150%;
  text-align: center;
}

.about_wrap_img{
  max-width: 820px;
  margin: 64px auto 24px;
}
.about_wrap_img img{
  width: 100%;
}



/* White Wrap */

#y {
	background: repeat url(../img/new/bg_yellow.jpg);
	text-align: center;
}

#y h1 {
    font-size:140%;
    font-family: 'Noto Sans Japanese', sans-serif;
    margin-top: 24px;
    margin-bottom: 26px;
    font-weight: 800;
    line-height: 145%;
    color: #101010;
}

#y h1 span{
  display: inline-block;
  vertical-align: middle;
}

#y_2 {
	background: url(../img/pa_bg.jpg) ;
	padding-bottom: 10px;
	text-align: center;
}

#y_2 h3 {
	font-weight: 700;
	color: #7b7b7b;
	letter-spacing: 1px;
}

#y_2 bold {
	color: #2f2f2f;
}
/* Grey Wrap */


.check-point-ballon{
  background-color: #101010;
  padding: 0px 8px;
  color: #ffffff;
  border-radius: 9px;
  text-align: center;
  position: relative;
  margin-right: 8px;
  font-size: 70%;
  font-weight: 500;
  display: inline-block;
  vertical-align: text-bottom;
}


.check-point-ballon::before {
  content: '';
  position: absolute;
  right: -17px;
  border-style: solid;
  border-width: 12px;
  border-color: transparent transparent transparent #101010;
  top: 4px;
}

#g {
	background: #f2f2f2;
	padding-top: 35px;
	padding-bottom: 35px;
	text-align: center;
}

#g h3 {
	letter-spacing: 1px;
    margin-top: 100px;
    margin-bottom: 60px ;

}



#g img{
    margin-bottom: 20px;

}
/* こんなお悩み解消します！ */
#dg {
	background: #e0e0e0;
	padding-top: 70px;
}

.onayami{
    color: #222222;

}

ul{
  list-style:none;
  font-size: 120%;
}


li{
    padding-bottom: 7px;

}






@media only screen and (max-width: 991px){
  #dg img{
    display: none;
  }

  .store_mb{
    display: none;
  }

  #y h2{
    font-size:94%;
  }
}

@media only screen and (min-width: 992px){
    .store_pc{
        display: none;
    }

}

/* 特典 */
#tt {
	background: repeat url(../img/new/bg_wh.jpg);
}

.ttwrap{
  padding: 4%;
}

.ttimg{
  max-width: 500px;
  margin: 0 auto 40px;

}

#tt h3{
   	text-align: center;
    font-weight: 800;
    font-size: 190%;
    line-height: 1.3;
}

#tt h3 span{
  display: inline-block;
}

#tt p{
  text-align: center;
}

#ttt {
	background: #ffd01b;
	padding-top: 100px;
}

#ttt h3{
   	text-align: center;
    font-weight: 700;
    font-size: 190%;
}

#ttt .btn-theme{
  background-color: #bf7022;
  box-shadow: 0 4px 0 #562c07;
}

#ttt .btn-theme:hover{
  box-shadow: none;
}

/* ご利用の流れ */
#gr {
	background: #fff3c8;
	padding-top: 100px;
}

#gr h3{
   	text-align: center;
    font-weight: 600;
    font-size: 190%;
}

#gr h4{
    font-size: 180%;
    font-weight: 600;
    line-height: 1.5
}

#gr img{
	border: 1px #292929 solid;
}


.gr_setsu{
   	text-align: center;
    margin-bottom: 70px;
}

.gryou{
    margin-bottom: 100px;
}

.green{
    color: #4dbb2f;
}

.waku{
    background: #ffffff;
    padding: 10px 30px 10px 30px;
    text-align: justify;
}

.waku_3{
    height: 250px;
}

.waku_2{
    height: 230px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px){
.waku p{
    line-height: 20px;
    }

.green{
       font-size: 91%;
    }

    .meribun{
        margin-top: -10px;
    }

    .meribunchu{
        margin-top: -10px;
    }

    #portfoliowrap h3 {
        font-size: 220%;
    }

}

/* 新faq */
#faq{
  background: repeat url(../img/new/bg.jpg);
  padding: 5% 4%;
}

.faq_wrap{
  max-width: 980px;
  margin: auto;
}

.faq_contant{
  margin-bottom: 10px;
}

.faq_contant .accordion-001 summary{
  background-color: #ffffff;
  padding: 16px 32px;
  border-radius: 20px;
}

.faq_contant .accordion-001 summary span::before{
  content: url(../img/new/faq_q.svg);
  text-align: center;
  vertical-align: middle;
  width: 40px;
  display: inline-block;
  margin-right: 6px;
}

.faq_wrap .flow_send_wrap{
  background: #ffffff;
  display: flex;
  border-radius: 0 0 20px 20px;
  border-top: 1px solid #e1e1e1;
  padding: 24px 32px;
}

.faq_wrap .flow_send_wrap::before{
  content: url(../img/new/faq_a.svg);
  text-align: center;
  vertical-align: middle;
  width: 40px;
  display: inline-block;
  margin-right: 12px;
}

.faq_wrap .accordion-001[open] .details__summary{
  border-radius: 20px 20px 0 0;
}

.faq_wrap .flow_send_wrap p{
  width: calc(100% - 40px);
  margin: 0;
}




/* メッセージ */

#saigo{
	background: repeat url(../img/new/bg_yellow.jpg);
  padding: 156px 0;
}

#saigo .container{
  padding: 0 4%;
}

#saigo .message{
  margin: auto;
  width: auto;
  padding: 32px 64px;
  font-size: 160%;
  font-weight: 600;
  -moz-transition: 100ms all linear;
  -o-transition: 100ms all linear;
  transition: 100ms all linear;
}


.message:hover{
  box-shadow:none;
  top: 6px;
}

.messagetwo{
    max-width: 380px;
    margin: auto;
    height: 80px;
    font-size: 180% !important;
    font-weight: 600 !important;
    position: relative;
    top: 0;
    -moz-transition: 100ms all linear;
    -o-transition: 100ms all linear;
    transition: 100ms all linear;
    margin-top:70px;
    margin-bottom:90px;
}



/* トップボタン */

.topbtn{
  max-width: 450px;
  margin: auto;
  margin-top: 24px;
  height: 80px;
  font-size: 130% !important;
  font-weight: 600 !important;
  box-shadow: 0 6px 0 #ae051d;
  position: relative;
  top: 0;
  -moz-transition: 100ms all linear;
  -o-transition: 100ms all linear;
  transition: 100ms all linear;
}


.topbtn:hover{
  box-shadow:none;
  top: 6px;
}

/* Footer Wrap */

#footer{
  background: #ffffff;
  color: #111;
  border-top: 1px solid #ffe06d;
}

.footer_wrap{
  padding: 24px 4%;
  display: flex;
  justify-content: space-between;
  align-content: center;
  flex-wrap: wrap;
}

.footer_contant{
  display: flex;
}

.footer_image{
  width: 140px;
}

.footer_image img{
  width: 100%;
}

.footer_wrap ul{
  display: flex;
  margin: auto;
}

.footer_wrap ul li{
  font-size: 75%;
  padding: 0 20px 0 0;
}

.footer_wrap ul li a{
  color:#111;
}

.footer_wrap ul li a:hover{
  text-decoration:underline;
}

.cpy{
  font-size: 90%;
  margin: 16px 0 0;
}

.cpy a{
  color: #1b4aff;
}

.cpy a:hover{
  text-decoration:underline;
}




/* item Wrap */

#itemwrap {
	background: url(../img/item-bg.jpg) no-repeat center top;
	margin-top: 0px;
	padding-top:70px;
	text-align:center;
	background-attachment: relative;
	background-position: center center;
	min-height: 500px;
	width: 100%;

    -webkit-background-size: 100%;
    -moz-background-size: 100%;
    -o-background-size: 100%;
    background-size: 100%;

    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

#itemwrap h1 {
	margin-top: 40px;
	color: white;
	font-size: 100px;
	font-weight: 700;
	letter-spacing: 3px;
}

#itemwrap h2 {
	color: white;
	font-size: 50px;
	font-weight: 100;
	letter-spacing: 2px;
}


.desc {
	text-align: left;
}

.desc-b {
	border-left: 4px solid #bababa;
}

.desc-a i {
	color: #555;
	padding-right: 8px;
}

.desc-b i {
	color: #555;
	padding-right: 8px;
}





/* BUTTON CONF */

.btn-theme {
  font-size:130%;
	color: #fff;
	background-color: #1b4aff;
	padding-left: 40px;
	padding-right: 40px;
	padding-bottom: 15px;
	padding-top: 15px;
	font-weight: 500;
	border-radius: 24px;
  letter-spacing: 1px;
  box-shadow: 0 4px 0 #0021a1;
  position: relative;
  top: 0;
  -moz-transition: 100ms all linear;
  -o-transition: 100ms all linear;
  transition: 100ms all linear;
}

.btn-theme:hover {
	cursor: pointer;
	color: white;
  box-shadow:none;
  top: 6px;

}



.col-lg-1 img{
    max-width : 100% ;
}

.col-lg-2 img{
    max-width : 100% ;
}

.col-lg-3 img{
    max-width : 100% ;
}


.col-lg-4 img{
    max-width : 100% ;
}

.col-lg-5 img{
    max-width : 100% ;
}

.col-lg-6 img{
    max-width : 100% ;
}

.col-lg-12 img{
    max-width : 100% ;
}

.after_p img{
    margin-top: -110px;
}

.arrow{
  margin-top: 35px;
}

.sarani{
  margin-top: 50px;
  margin-bottom: 60px;

}

.ttl-area h2{
  font-weight: 900;
  font-size:220%;
  letter-spacing: 2px;
  margin: 16px 0;
}

@media only screen and (min-width: 640px){
.ind_1 .ttl-area:after {
  content: ' ';
  height: 0;
  position: absolute;
  width: 0;
  border: 50px solid transparent;
  border-top-color: #ffffff;
  left: 50%;
  margin-left: -50px;
  margin-top: 15px;
}
}

@media only screen and (max-width: 639px){
  .ind_1 .ttl-area:after {
    content: ' ';
    height: 0;
    position: absolute;
    width: 0;
    border: 37px solid transparent;
    border-top-color: #ffffff;
    left: 53%;
    margin-left: -50px;
    margin-top: 0;
  }
}

h1 img{
   max-width : 85% ;
}

#y .container{
  display: flex;
  justify-content: center;
  max-width: 100%;
}

.abo_bun{

    display: table-cell;
vertical-align: middle;
}

.fa {
  display: inline-block;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.redbold{
color: crimson;
font-weight: 600;


}

.redbold_check{
color: crimson;
font-size: 110%;
    padding-right: 8px;
}

.meritto{
    margin-bottom: 100px;

}

.plan{
margin-bottom: 50px;
}

/* アバウト */
@media only screen and (min-width: 990px){
.smh_about {
    display: none;
}
}

@media only screen and (max-width: 989px){
.pc_about {
    display: none;
}
    .smh_about{
    margin-top: 70px;
        margin-bottom: 50px;
    }

    .smh_about img{
        margin: auto;
        width: 100%;
    }

    .arrow img{
      width: 80px;
    }

    .sarani{
      width: 200px;
    margin: auto;
        margin-top: 30px;    }
}

@media only screen and (max-width: 760px){
.port-space img{
    width:73%;
}
}

.pc_about{
margin: 0 auto;
    padding-top: 60px;
    margin-bottom: 60px;

}

.pc_about img{
      width:100%;
}

strong{
    color: #fa2a2a;
}

@media only screen and (min-width: 415px){
.dtkeshi{
display: none;
}

}


/* スマホ用 */
@media only screen and (max-width: 414px){


#y h2{
  font-size: 120%;
  margin-top: 16px;
  margin-bottom: 16px;
}

.ttl-area h2 {
    font-size: 150%;
    letter-spacing: 1px;
    line-height: 1.4;
}

.btn-theme {
    padding-left: 20px;
    padding-right:20px;
}

.topbtn{
    font-size:95% !important;
    margin-top: 50px;
}

li{
    padding-bottom: 37px;
}

.meribun {
    margin-top: 0px;
}

#portfoliowrap h3 {
    font-size: 150%;
}
    #portfoliowrap p{
        text-align: left ;
    }


#g h3 {
    font-size:20px;
    margin-bottom: 10px;
    margin-top: 70px;
}

#g p{
text-align: left;
}

#gk .container {
  padding-top: 30px;
  padding-bottom: 30px;
}

.gr_setsu {
  text-align: left;
}

.gr_setsu{
  text-align: justify;
}

.green{
  font-size: 66%;
}

.waku_2 {
  height: auto;
}

.waku_3 {
height: auto;
}
.koeim{
  text-align: center;
  margin-bottom: 30px;
}


    .arrow{
margin-top: 20px;
        margin-bottom: 30px;
    }

   .arrow img{
        width: 50px;
        text-align: center;
    }

    .after_p img {
    margin-top: -39px;
}
    .port-space img {
    width: 91%;
}
}

/* スマホ用 iphone5*/
@media only screen and (max-width: 320px){
    .topbtn{
            font-size: 80% !important;
        padding: 15px 1px;
        margin-top: 40px;
    }

.message {
    font-size: 94% !important;
    padding: 15px 1px;
}

    ul{
        padding-bottom: 20px;
        margin: 15px 0;
    }

    .ttl-area h2 {
    font-size: 132%;
}

    #g h3 {
        font-size: 18px;
    }
    #gr h3 {
    text-align: left;
    font-weight: 600;
    font-size: 150%;
}

}

#g img{
max-width: 450px;
    width: 100%;
}


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

  .tocho{
margin:0 10px;
    width: 31.333333% !important;

}
}

table.table01 {
	width:100%;
	border-right:#e8e8e8 solid 1px;
	border-collapse: collapse;
    margin-bottom: 40px;
}
table.table01 thead th {

	color:#FFF;
	padding:25px 15px;
	border-right:#FFF solid 1px;
	border-bottom:#FFF solid 1px;
}
table.table01 thead th:last-child {
	border-right:#e8e8e8 solid 1px;
}
table.table01 tbody th {
	background:#e8e8e8;
	color:#FFF;
	padding:10px 15px;
	border-bottom:#FFF solid 1px;
	vertical-align:middle;
}
table.table01 tbody tr:last-child th {
	border-bottom:#e8e8e8 solid 1px;
}
table.table01 tbody td {
	background:#FFF;
	padding:30px 15px;
	border-left:#e8e8e8 solid 1px;
	border-bottom:#e8e8e8 solid 1px;
	vertical-align:middle;
    font-size:115%;
}

.thttl{
    background:#ff5454;
    padding: 50px 0;
    width: 40%;
    text-align: center;
    font-size: 115%
}



.thttl_2{
    background:#bfbfbf;
    padding: 50px 0;
    width: 40%;
    text-align: center;
    font-size: 115%
}





.mu{
   background:#d0edff !important;
    border: none!important;
}

.leftti{
     background:#d0edff !important;
    color: #272727 !important;
    border: none!important;
    text-align: right;
    width: 20%;
    vertical-align:middle!important;
    font-size: 120%;
}

tr{
    text-align: center;
    vertical-align:middle!important;
}

.krsm_setsu{
    text-align: center;
    font-size:120%;
}

@media screen and (max-width: 640px) {
  table.table01 thead {
  	display:none;
  }
  table.table01 tbody th {
  	display:block;
  }
  table.table01 tbody td {
  	display:block;
  }
  table.table01 tbody td::before {
  	content: attr(label);
  	float: left;
  	clear:both;
  	font-weight:bold;
  }
  table.table01 tbody td p {
  	padding-left:6em;
  }

  .leftti{
       background:#ff5454 !important;
      color: #ffffff !important;
      width: 100%;
      border: none!important;
      text-align: center!important;
      vertical-align:middle!important;
      font-size: 120%;
      margin-top: 50px;
  }
}


/* 新タブレット */

@media only screen and (max-width: 768px){
  #y .container{
    max-width: 100%;
  }
  .about_wrap h2{
    font-size: 220%;
  }
  .about_wrap_img{
    width: 75%;
  }
  .three_point_wrap{
    flex-direction: column;
    padding-top: 10%;
  }
  .three_point_contant{
    width: 100%;
    margin-bottom: 40px;
    padding: 0 4%;
  }
  .three_point_contant h2{
    font-size: 200%;
  }
  .three_point_contant p {
    font-size: 110%;
  }
  .three_point_img{
    width: 20vw;
  }
  .checklist_wrap{
    padding: 9% 4%;
  }
  .checklist_contant ul{
    flex-direction: column;
  }
  .checklist_contant ul li{
    width: 100%;
  }
  .benefit_contant, .benefit_contant:nth-child(even){
    flex-direction: column;
    gap: 16px;
    margin-bottom: 40px;
  }
  .benefit_img{
    width: 60%;
  }
  .benefit_text{
    width: 100%;
  }
  #ttt{
    padding-top: 70px;
  }
  #ttt h3{
    font-family: 'Noto Sans Japanese', sans-serif;
    font-weight: 800;
    line-height: 1.5;
    font-size: 180%;
  }
  .messagetwo{
    margin-top: 40px;
  }
  #fee{
    padding: 8% 4%;
  }
  .fee_contant{
    gap: 16px;
  }
  #flow{
    padding: 10% 4%;
  }
  .flow_column_wrap{
    flex-wrap: wrap;
    justify-content: center;
  }
  .flow_wrap h3{
    font-family: 'Noto Sans Japanese', sans-serif;
    font-weight: 800;
    line-height: 1.5;
    font-size: 180%;
  }
  .flow_step{
    width: 25%;
    text-align: center;
  }
  .flow_illust{
    width: 73%;
    text-align: center;
  }
  .flow_title{
    width: 100%;
  }
  .flow_text{
    width: 100%;
  }
  .flow_step img{
    width: 80%;
  }
  .flow_illust img{
    width: 80%;
  }
  .flow_title h4{
    text-align: left;
    margin-top: 0;
  }
  .flow_text p{
    padding-left: 0;
  }
  #voice {
    padding: 10% 4% 8%;
  }
  .voice_contant{
    flex-direction: column;
    padding: 32px 56px 56px;
  }
  .voice_image {
    width: 40%;
  }
  .voice_taxt{
    width: 100%;
  }
  #faq{
    padding: 9% 4%;
  }
  .ttwrap {
    padding: 10% 4%;
  }
  .ttimg{
    max-width: 60%;
  }
  #tt h3{
    font-family: 'Noto Sans Japanese', sans-serif;
    font-weight: 800;
    line-height: 1.5;
    font-size: 180%;
  }
  .footer_contant{
    flex-direction: column;
  }
  .footer_wrap ul{
    flex-wrap: wrap;
    justify-content: space-between;
    padding-left: 0;
    margin-bottom: 16px;
    gap: 8px;
  }
  .footer_wrap ul li{
    width: 30%;
    padding: 0 20px 16px 0px;
  }
  .footer_image{
    margin-bottom: 16px;
    width: 180px;
  }
  #saigo .message{
    width: 100%;
    padding: 24px 16px;
    font-size: 120%;
    max-width: 560px;
  }
}
/* 新細かい調整 */
@media only screen and (max-width: 608px){
  #y h1{
    font-size: 120%;
    margin-top: 16px;
    margin-bottom: 16px;
  }
  .check-point-ballon::before {
    top: 2px;
  }
}
@media only screen and (max-width: 530px){
  .check-point-ballon::before {
    border-color: #101010 transparent transparent transparent;
    right: 49px;
    top: 22px;
  }
  .check-point-ballon{
    margin-bottom: 6px;
  }
}
@media only screen and (max-width: 404px){
  .check-point-ballon::before {
    border-color: #101010 transparent transparent transparent;
    right: 45px;
    top: 18px;
  }
}



/* 新スマホ */
@media only screen and (max-width: 430px){
  #y h1{
    font-size: 90%;
  }
  .check-point-ballon{
    border-radius: 6px;
    margin-bottom: 0;
  }
  .check-point-ballon::before {
    right: -10px;
    top: 4px;
    border-width: 6px;
    border-color: transparent transparent transparent #101010;
  }
  .half{
    flex-direction: column;
  }
  .half .twentytwenty-wrapper{
    width: 100%;
  }
  .first_twentytwenty p {
    font-size: 110%;
  }
  .jirei{
    text-align: left;
    font-size: 110%;
  }
  #w{
    padding-top: 16px;
    padding-bottom: 16px;
  }
  .ttl-area h2, .about_wrap h2 {
    font-size: 150%;
    line-height: 1.3;
  }
  .three_point_contant h2{
    font-size: 160%;
  }
  .three_point_contant p {
    font-size: 100%;
  }
  .checklist_contant ul li{
    display: flex;
    flex-direction: column;
  }
  .accordion-001 summary{
    font-size: 100%;
  }
  .faq_contant .accordion-001 summary span::before{
    width: 34px;
  }
  .faq_contant .accordion-001 summary {
    padding: 16px 4%;
  }
  .voice_contant{
    padding: 32px 8% 56px;
  }
  .flow_column{
    padding: 24px 32px 32px;
  }
  .fee_wrap h3 {
    font-size: 130%;
  }
  .comparison_text{
    flex-direction: column;
  }
  .comparison_text .light {
    width: 44px;
  }
  .comparison_text h3{
    font-size: 100%;
  }
  .benefit_text h2 {
    font-size: 160%;
  }
  #ttt h3 {
    font-size: 160%;
  }
  #tt h3 {
    font-size: 140%;
  }
  .flow_title h4{
    font-size: 160%;
    margin-bottom: 0;
  }
}


/* 固定CTAボタン */
.sikaku_box {
  position: fixed;
  right: 16px;
  bottom: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  z-index: -1;
  transition: 0.3s;
  animation: DownAnime 0.5s forwards;
}
.sikaku_box.fixed {
  opacity: 1;
  z-index: 9;
}

.sikaku_box.fixed{
	animation: UpAnime 0.5s forwards;
}



@keyframes UpAnime{
	from {
		opacity: 1;
		transform: translateY(100px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes DownAnime{
  from {
	opacity: 1;
	transform: translateY(0);
  }
  to {
	opacity: 1;
	transform: translateY(100px);
  }
}

@media(max-width:768px){
  .sikaku_box .topbtn{
    height: 64px;
  }
  .sikaku_box{
    left:0;
    right: 0;
    bottom: 16px;
  }
  .sikaku_box .btn-theme{
    border-radius: 16px;
  }
  .sm_hide{
    display: none;
  }

  .fv_cta{
    position: static;
    font-size: 120%;
    margin: 0 4%;
    line-height: 1.3;
  }

  .last .cta_btn{
    font-size: 140%;
  }
}

@media(max-width:430px){
  #headerwrap .container{
    padding: 16px 0 64px;
  }
  h1 img {
    max-width: 95%;
  }
  .fv_cta .cta_btn{
    padding: 24px;
    border-radius: 22px;
    font-size: 100%;
  }
  .cta_height.float_btn{
    width: 92%;
  }
  .float_btn .cta_btn{
    font-size: 100%;
    padding: 16px 24px;
    border-radius: 20px;
    width: 100%;
  }
  #fee .cta_btn, .last .cta_btn, #checklist .cta_btn{
    font-size: 120%;
    padding: 28px 0;
    width: 100%;
  }
  .ttl-area .col-lg-8{
    padding: 0;
  }
  .comparison_wrap{
    padding: 10% 4%;
  }
  .benefit_contant, .benefit_contant:nth-child(even){
    gap:0;
  }
  .fee_contant{
    gap:4px;
  }
  .seisaku_btn .cta_btn{
    font-size: 140%;
  }
}

@media only screen and (max-width: 413px){
  .check-point-ballon::before {
    right: 43px;
    top: 19px;
    border-width: 6px;
    border-color: #101010 transparent transparent transparent;
  }
}
