:root {
--primary: #2E2E5A;
--secondary: #2D257F;
--accessibie: #675CD7;
--gray: rgba(4, 4, 6,0.48);
--tag_primary: #664BB8;
--tag_stroke: rgba(80, 67, 180,0.16);
--tag-bg:#F6F5FF;
--text: #5D4204;
--text-gray:rgba(3, 3, 5,0.48);
--border-primary:#D9D9D9;
--bg_secondary: #F6F5FF;
--bg_gray: #F8F8F8;
--g_gradation:linear-gradient(0deg, #F6F5FF 0%, #E7E5FF 100%);
--y_gradation:linear-gradient(0deg, #FAD02B 0%, #FFEC60 100%);
}
#front-page{font-family: "Noto Sans JP", "hiragino sans", "meiryo", "sans-serif";color:var(--primary);}
#front-page dl,#front-page dt,#front-page dd{padding: 0;}
#front-page h2{font-size:40px;line-height:100%;color:var(--primary);margin: 0;padding: 0;}
#front-page p{font-size: 16px;line-height:144%;font-weight: 500;}
#front-page marker{color:#675CD7;}
#front-page strong{font-weight: inherit;}
#front-page p.front__copy{font-size: 24px;font-weight: 700;line-height: 100%;}
#front-page p.caution{color:var(--text-gray);font-size: 12px;line-height: 100%;}
#front-page img{transform: translateZ(0);backface-visibility: hidden;}
.Inter_font{font-family: "Inter" , "sans-serif";}
.SF_font{font-family:-apple-system, BlinkMacSystemFont, "Inter" , "sans-serif";}
#front-page ul{list-style:none;}
#front-page hr{width: 100%;margin:0;border: 1px solid var(--border-primary);}
#front-page .front-sp{display: none;}
a:hover {opacity: 0.8;}

.arrow_icon{
position: relative;
display: inline-block;
width: 12px;
height: 20px;
}
.arrow_icon::before,.arrow_icon::after {
content: "";
position: absolute;
top: calc(50% - 2px);
right: 0;
width: 15.5px;
height: 4px;
border-radius: 9999px;
background-color: #ffffff;
transform-origin: calc(100% - 2px) 50%;
}
.arrow_icon::before {transform: rotate(42deg);}
.arrow_icon::after {transform: rotate(-42deg);}

.front__btn_wrapper{width: 100%;}
.front__btn,#front-page .section-top-news .front__btn{
width:100%;
max-width:480px;
height: 74px;
padding: 16px 40px;
display:flex;
justify-content: center;
align-items: center;
gap: 10px;
font-size: 24px;
font-weight: 700;
line-height: 100%;
color: #fff;;
border-radius:80px;
background: linear-gradient(0deg, #664BB8 0%, var(--accessibie) 100%);
will-change: filter;
filter: drop-shadow(0px 16px 21px rgba(80, 67, 180, 0.16));
}

.front__cta_btn{
width: 100%;
max-width: 467px;
height: 98px;
padding: 28px 48px;
background: var(--y_gradation);
display:flex;
justify-content: center;
align-items: center;
border-radius: 16px;
will-change: filter;
filter: drop-shadow(0px 16px 21px rgba(0, 0, 0, 0.16));
border:2px solid #FFF082;
}
#front-page p.front__cta_btn_text{
font-size: 32px;
font-weight: 800;
color:var(--text);
will-change: filter;
filter: drop-shadow(0 2px 0 rgba(255, 255, 255, 0.4));
}
.front__cta_btn_text span{font-weight: 800;font-size: 34px;margin-bottom: -4px;}
.front__cta_btn .arrow_icon{
width: 16px;
height: 30px;
margin-left: 17px;
margin-bottom:-2px;
}
.front__cta_btn .arrow_icon::before,.front__cta_btn .arrow_icon::after {
top: calc(50% - 2.5px);
width: 21.7px;
height: 5px;
background-color:var(--text);
transform-origin: calc(100% - 2.5px) 50%;
}
.front__cta_.arrow_icon::before {transform: rotate(47.3deg);}
.front__cta_.arrow_icon::after {transform: rotate(-47.3deg);}

.slick-list {overflow: hidden;}
.slick-track {display: flex;align-items: center;}
.slick-slide {height: auto;}
.slick-arrow{
font-size: 0;
width: 56px;
height: 56px;
border-radius:50%;
background-color: var(--accessibie);
display: grid;
justify-content: center;
align-items: center;
transition: 0.2s;
cursor: pointer;
}
.slick-arrow:hover{background-color: var(--tag_primary);}
.slick-arrow.slick-disabled {background-color: #fff;border: 1px solid #D8D6DE;cursor: default;}
.prev-arrow{transform: rotate(180deg);}
.slick-arrow.slick-disabled .arrow_icon::before,.slick-arrow.slick-disabled .arrow_icon::after{background-color:#D8D6DE;transform-origin: calc(100% - 1px) 50%;}

.slider_overflow__wrapper{
width: 100%;
overflow:hidden;
display: flex;
flex-wrap: wrap;
}
.slider_overflow__head{
width: 100%;
height: auto;
display: flex;
justify-content: space-between;
}
.slider_overflow__inner{
width: 100%;
height: auto;
overflow:visible;
text-align: center;
margin:32px 0 40px 0;
}
.slider_overflow{width: 100%;display: flex;justify-content:flex-start;}
.slider_overflow .slick-list{overflow: visible;}
.slider_overflow .slick-slide{height: fit-content;flex-shrink: 0;}
.slider_overflow .slick-slide:last-child{margin: 0;}
.slider_overflow__arrows {
display: flex;
gap: 16px;
width: fit-content;
align-items: flex-end;
}
.slider_overflow__wrapper .front__btn{margin:0 auto 80px auto;}

/*======== FV ========*/
.front-fv__top{
width: 100%;
height: 520px;
background-image: url("../images/front/front-fv__top_bg.png");
background-position: center;
background-repeat: no-repeat;
background-size: cover;
}
.front-fv__top_wrapper{
width: 100%;
max-width: 1080px;
height:100%;
display: flex;
justify-content: center;
align-items: center;
margin: 0 auto;
}
.front-fv__top_text{width:54%;color: #fff;z-index: 2;}
.front-fv__top_text h1{
font-size: 64px;
font-weight: 800;
line-height: 136%;
white-space: pre;
}
.front-fv__top_text h1 strong{font-size: 84px;font-weight: 700;}
#front-page .front-fv__top_text h1 strong span {font-size: 100px;}
#front-page p.front-fv__top_copy{
font-size: 28px;
font-weight: 700;
margin:16px 0 48px 0;
line-height: 100%;
}

.front-fv__license{
position:relative;
width: 43%;
height: auto;
aspect-ratio:460 / 407;
z-index: 1;
}
.front-fv__license_mirai{
position: absolute;
bottom:0;
left:0;
width: 300px;
height: auto;
}
#front-page p.front-fv__license_text{
position: absolute;
top:0;
right:0;
width: 230px;
height: auto;
aspect-ratio: 1 / 1;
background-image: url("../images/front/front-fv__license_bg.png");
background-position: center;
background-repeat: no-repeat;
background-size:contain;
display: grid;
align-items: center;
align-content: center;
justify-content: center;
transform:rotate(15deg);
font-size: 20px;
font-weight: 800;
color:var(--accessibie);
font-feature-settings: "palt";
line-height: 128%;
text-align: center;
z-index: -1;
}
.front-fv__license_text strong{font-size: 40px;line-height: 144%;font-family: "Hiragino Kaku Gothic Std","Noto Sans JP", "sans-serif";}
.front-fv__license_shine{position:absolute;height: auto;z-index:-1;}
.front-fv__license_shine:nth-of-type(2){width:32px;top:0;left: 43%;}
.front-fv__license_shine:nth-of-type(3){width:23px;bottom:30%;right:23%;}
.front-fv__license_shine:last-of-type{width:40px;bottom:23%;right:13%;}

.front-fv__bottom{
width: 100%;
height: 237px;
display: grid;
align-items: end;
background-color: var(--bg_secondary);
overflow: hidden;
}
.front-fv__bottom_wrapper{
width: 95%;
max-width: 1018px;
height:198px;
display: flex;
justify-content:space-between;
align-items: flex-start;
margin: 0 auto;
}
.front-fv__bottom img {
width: 34%;
height: auto;
aspect-ratio: 345 / 198;
filter:drop-shadow(8px 20px 16px rgba(221, 218, 248, 0.43));
}
.front-fv__bottom_text{
width: fit-content;
max-width: 63%;
display: grid;
gap: 8px;
padding-right: 15px;
}
.front-fv__bottom_list{display: flex;gap: 1.25%;align-items: flex-start;}
.front-fv__bottom_list li {
display: flex;
justify-content: center;
position: relative;
width: fit-content;
padding: 4px 15px;
white-space: nowrap;
font-size:16px;
font-weight: 600;
color: var(--secondary);
margin-bottom: 15px;
border-radius: 50px;
background-color: #ffffff;
filter: drop-shadow(0px 3px 12px rgba(193, 190, 231, 0.66));
z-index: 1;
}
.front-fv__bottom_list li::before {
position: absolute;
bottom: -10px;
content: '';
width: 25px;
height: 25px;
background-color: #fff;
clip-path: polygon(0% 0%, 100% 0%, 100% 100%);
z-index: -1;
}

#front-page .front-fv__bottom_text p{color: var(--secondary);line-height: 160%;}
#front-page p.front-fv__bottom_copy{
font-size: 32px;
font-weight: 700;
margin-top: -8px;
line-height: 134%;
}
.front-fv__bottom_copy strong{font-size: 40px;}
.front-fv__bottom_copy strong .Inter_font {font-size: 46px;line-height: 136%;}
.front-fv__bottom_copy small{font-size: 20px;font-feature-settings: "palt";}

/*======== award ========*/
.front-achievement__award {
display: grid;
justify-items: center;
margin: 40px 0 24px 0;
gap: 22px;
}
.front-achievement__list{
width: 90%;
max-width:730px;
margin: 0 auto;
display: flex;
justify-self:center;
gap: 3.5%;
}
.front-achievement__item{
width: 30%;
display: flex;
justify-content: space-between;
align-items: center;
}
.front-achievement__item:before,.front-achievement__item:after{
content:"";
width: 26px;
height:75px;
background-image: url(../images/front/front-achievement__item_bg.png);
background-position: center;
background-repeat: no-repeat;
background-size: contain;
}
.front-achievement__item:after{transform:scale(-1, 1);}
#front-page p.front-achievement__item_text{
color: var(--primary);
font-weight: 700;
font-size: 20px;
text-align: center;
line-height: 160%;
}
    #front-page .front-achievement__item:first-child .front-achievement__item_text{font-size: 17px;}
    #front-page .front-achievement__item:last-child .front-achievement__item_text{font-size: 18px;}
#front-page .front-achievement__item_text strong{
font-size: 32px;
font-weight:800;
display: block;
line-height: 100%;
}
    #front-page .front-achievement__item:first-child .front-achievement__item_text strong{font-size:34px;line-height: 120%;}
    #front-page .front-achievement__item:last-child .front-achievement__item_text strong{line-height: 100%;}
#front-page .front-achievement__item_text strong span {font-size: 40px;line-height: 100%;}
    #front-page .front-achievement__item:last-child .front-achievement__item_text strong span{font-size: 44px;line-height: 100%;}
#front-page .front-achievement__item_text strong sub {
font-size: 12px;
font-weight: 400;
margin-left:4px;
line-height: 100%;
}
.front-achievement__caution{display: flex;gap: 24px;}

.achievements-wrapper{overflow: hidden;}
.achievements-wrapper .list-item {height: 75px;width: auto;}
.achievements-wrapper .list-item > img {max-width: unset;height:100%;}

.front-achievement__media{
position: relative;
width: fit-content;
max-width: 100%;
margin: 40px auto 80px auto;
}
.front-achievement__media_list{
width: 90%;
max-width: 1240px;
height: auto;
padding:48px 0;
background:linear-gradient(0deg, #E7E5FF 0%, #F6F5FF 100%);
border-radius: 32px;
margin: 0 auto;
display: flex;
justify-content: center;
align-items: flex-end;
overflow: hidden;
}
.front-achievement__media_list .slick-list {overflow: visible;width: 100%;}
.front-achievement__media_list .slick-track {align-items: flex-end;}
.front-achievement__media_item{
width: 600px;
height: fit-content;
flex-shrink: 0;
margin: 0 30px;
}
.front-achievement__media_item .front__copy{text-align: center;}
#front-page .front-achievement__media_item .front__copy span{
font-size: 20px;
line-height: 100%;
font-weight: 900;
display: block;
margin-bottom: 12px;
}
.front-achievement__media_thumbnail{width:100%;height: fit-content;margin-top:24px;}
.front-achievement__media_thumbnail iframe{width:100%;height:auto;aspect-ratio: 600 / 348;}
.front-achievement__media .slick-arrow{
position: absolute;
z-index: 1;
top: 0;
bottom:0;
margin: auto;
}
.front-achievement__media .prev-arrow{left:28px;}
.front-achievement__media .next-arrow{right:28px;}

/*======== introduction ========*/
.front-before{text-align: center;}
#front-page .front-before h2{color: var(--secondary);}
.front-before__list{
width:fit-content;
display: flex;
justify-content: center;
gap: 40px;
margin: 60px auto 40px auto;
}
.front-before__image{width:210px;height:auto;margin-bottom:12px;}
.front-before__image img{width: 100%;height: auto;display: block;}
#front-page p.front-before__caption{font-weight: 700;}

.front-introduction__wrapper{
border-top:46px solid #fff;
position: relative;
background-color:  var(--bg_secondary);
display: grid;
gap: 80px;
padding-top: 48px;
}
.front-introduction__wrapper:before{
content: "";
position: absolute;
top:-46px;left: 0;right: 0;margin: auto;
width: 0;
height: 0;
border-style: solid;
border-right: 52px solid transparent;
border-left: 52px solid transparent;
border-bottom: 60px solid var(--bg_secondary);
border-top: 0;
}
.front-introduction__contents{
width: 100%;
height: auto;
overflow: hidden;
margin: 0 auto;
display: grid;
justify-items: end;
align-items: start;
gap: 80px;
}

.front-introduction__title small{
font-size: 24px;
font-weight: 700;
line-height: 100%;
color: var(--accessibie);
display: block;
margin-bottom: 12px;
}
.front-after__text{
width:90%;
max-width: 1064px;
height: auto;
margin: 60px auto;
display: flex;
justify-content:space-around;
align-items: center;
margin: 0 auto;
}
#front-page .front-after__text h2 strong{font-size: 48px;color: var(--accessibie);}
.front-after__list{margin: 20px 0;}
.front-after__list li{
font-size: 20px;
font-weight: 700;
padding-left: 32px;
position:relative;
}
.front-after__list li:before{
content: "";
width: 24px;
height:auto;
aspect-ratio: 1 / 1;
background-image: url("../images/front/check.svg");
background-position:bottom center;
background-repeat: no-repeat;
background-size: contain;
position: absolute;
top: 0;left: 0;
}
.front-after__text dd{width: 220px; height: auto;}

.front-service{
width:90%;
max-width: 1064px;
height: auto;
margin: 0 auto;
background-color: #fff;
border-radius: 16px;
padding:2.4%;
padding: 46px 2.4% 40px 2.4%;
margin:-50px auto 0 auto;
}
.front-service .front__copy{margin-bottom:12px;}
.front-service__list{
width:100%;
display: flex;
justify-content: center;
gap: 3%;
margin: 40px auto;
}
.front-service__item{width: fit-content;}
.front-service__image{
width: 100%;
height:240px;
margin-bottom: 12px;
display: flex;
justify-content: center;
align-items: flex-start;
}
.front-service__image img{
height: 100%;
width: auto;
max-width: unset;
display: block;
}
#front-page p.front-service__text{font-size: 20px;font-weight: 700;text-align: center;}

.front-flow{
width: 100%;
height: auto;
padding: 24px;
background-color: var(--bg_gray);
border-radius: 12px;
padding:37px 32px;
}
#front-page .front-flow h2 {font-size: 32px;}
.front-flow_caption{margin: 16px 0 24px 0;line-height: 160%;}
.front-flow__list{
width: 100%;
height: auto;
display: flex;
justify-content:center;
gap: 30px;
}
.front-flow__item{
width: 200px;
display: grid;
align-content: start;
gap:20px;
position: relative;
}
.front-flow__image{
width: 100%;
height: 263px;
padding: 8%;
border-radius: 16px;
background-color: #fff;
}
.front-flow__item img {
width: auto;
max-width: unset;
height: 100%;
margin: 0 auto;
display: block;
}
.front-flow__arrow{
display: inline-block;
width: 47px;
height: 40px;
background: linear-gradient(90deg, #ffffff 0%, #35abe2 50%);
clip-path: polygon(0 26.3%, 53.2% 26.3%, 53.2% 0, 100% 50%, 53.2% 100%, 53.2% 73.8%, 0 73.8%);
position: absolute;
top:110px;
right:-26px;
z-index:2;
}
    .front-flow__item:nth-child(2) .front-flow__arrow{background: linear-gradient(90deg, #ffffff 0%, #675CD7 50%);}
    .front-flow__item:nth-child(3) .front-flow__arrow{background: linear-gradient(90deg, #ffffff 0%, #EC66CF 50%);top: 64px;}
    .front-flow__item:nth-child(3) .front-flow__arrow:last-child{top:180px;}
#front-page p.front-flow__text{font-size: 14px;}

.front-introduction__contents_point{
width: 100%;
height:calc(565px + 8px);
background-image: url(../images/front/front-point__bg.png);
background-position: top right;
background-repeat: no-repeat;
background-size: contain;
align-items: center;
}
.front-point{
width: 90%;
max-width: 1064px;
overflow-x: visible;
margin: 0 auto;
padding: 0 0 0 40px;
justify-content: end;
}
.front-point__wrapper{width: 43%;min-width:530px;}
#front-page p.front-point__caption{width: 90%;margin: 28px 0 24px 0;line-height: 160%;}
#front-page p.front-templates_title{font-weight: 700;}
.front-templates_list{
display: flex;
gap:8px;
flex-wrap: wrap;
margin-top: 12px;
}
.front-templates_list li {
height: 38px;
background-color: #FAFCFF;
border-radius: 20px;
border: var(--tag_stroke) 1px solid;
color: var(--tag_primary);
font-size: 14px;
line-height: 100%;
font-weight: 700;
padding: 12px 20px;
box-sizing: border-box;
}

.front-introduction__contents.front-introduction__contents_functions {width: 100%;}
.front-functions {
width: 90%;
max-width: 1064px;
overflow-x: visible;
margin: 0 auto;
padding: 0 0 0 40px;
justify-content: end;
}
.front-functions__wrapper{margin-top: -40px;gap: 40px;}
.front-functions__inner{
width: 90%;
max-width: 1064px;
padding-left: 40px;
margin: 0 auto;
}
.front-functions__item{width: 344px;margin-right:40px;flex-shrink: 0;}
.front-functions__item_img{
width: 100%;
height: 250px;
background-color: #fff;
border-radius: 16px;
display: grid;
align-items: center;
padding: 30px;
margin-bottom:16px;
}
.front-functions__item_img img{
width: auto;
max-width: unset;
height: 186px;
margin: 0 auto;
}
#front-page p.front-functions__item_text{
font-size: 20px;
font-weight: 700;
text-align: left;
line-height: 100%;
}

/*======== support ========*/
#front-support{
width: 90%;
max-width:984px;
margin: 0 auto;
padding-top: 80px;
}
.front-support__wrapper{
width: 100%;
height: auto;
background-color: var(--bg_gray);
border-radius: 24px;
padding: 48px;
margin-top: 32px;
display: grid;
gap: 32px;
}
.front-range{
width: 100%;
height: auto;
display:flex;
justify-content: space-between;
}
.front-range__count{
width: 40%;
height: auto;
background-color: #fff;
border-radius: 20px;
text-align: center;
display: grid;
justify-content: center;
align-content: center;
filter: drop-shadow(2px 6px 24px rgba(0, 0, 0, 0.08));
}
.front-range__count h3{
font-size: 24px;
font-weight: 700;
line-height: 144%;
margin: 0;
padding: 0;
}
#front-page p.front-range__count_content{font-size: 32px;font-weight: 700;margin: 24px 0 16px 0;}
#callCount{font-size: 80px;color: var(--accessibie);}
#callRange{
-webkit-appearance: none;
appearance: none;
width: 100%;
height: 8px;
border-radius: 9999px;
background: linear-gradient(90deg, #675cd7 40%, #ebebeb 40%);
cursor: pointer;
padding: 0;
border: none;
box-sizing: content-box;
}

/* ツマミ：Chrome, Safari, Edge用 */
#callRange::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 24px;
height: 24px;
border: 2px solid #664bb8;
border-radius: 9999px;
background: #ffffff;
box-shadow: none;
}
/* ツマミ：Firefox用 */
#callRange::-moz-range-thumb {
width: 24px;
height: 24px;
border: 2px solid #664bb8;
border-radius: 9999px;
background: #ffffff;
box-shadow: none;
}

#front-page p.front-range__count_caption{color:var(--text-gray);margin-top: 12px;}
.front-result{width: 56%;}
.front-result__list{
width: 100%;
height: auto;
display: grid;
gap: 24px;
}
.front-result__item{display: flex;justify-content: space-between;align-items: flex-end;}
.front-result__inner{width: fit-content;}
.front-result__item h4{
font-size: 20px;
font-weight: 700;
margin: 0;
padding: 0;
}
#front-page p.front-result__content{
width: fit-content;
font-size: 32px;
font-weight: 700;
line-height: 100%;
}
#front-page p.front-result__content .SF_font{color: var(--accessibie);font-size: 48px;line-height: 100%;}
.front-support__result__content span{
font-size:48px;
font-weight: 700;
color: var(--accessibie);
line-height: 100%;
}
#front-page p.front-result__caption{
font-size: 14px;
line-height: 144%;
text-align: right;
color:var(--text-gray);
}

.front-cost{
width:100%;
height: auto;
background-color: #fff;
border-radius: 16px;
padding:80px 56px 48px 56px;
display: flex;
justify-content: space-between;
align-items: center;
}
.front-cost__contents_wrapper {width: 75%;max-width: 564px;height: auto;}
.front-cost__contents{
width:100%;
height: auto;
display: flex;
gap:7%;
position:relative;
}
#front-page .front-cost__name p{
font-size: 20px;
font-weight: 700;
color: var(--primary);
text-align: center;
flex: 1;
}
.front-graph{margin: 12px 0;}
.front-graph__item{
flex: 1;
display:grid;
gap: 16px;
align-content: start;
position: relative;
}
.front-graph_wrapper{
width: 100%;
height: 400px;
border-bottom:1px solid var(--accessibie);
display: grid;
justify-items: center;
}
.front-graph__top,.front-graph__bottom{
width:83%;
display: grid;
justify-content: center;
align-items: center;
align-content: center;
margin: 0 auto;
}
.front-graph__top{border: 2px dashed var(--accessibie);height: 315px;}
.front-graph__bottom{background-color: var(--accessibie);}
#front-page p.front-graph_name,#front-page p.front-graph_cost{
width: 100%;
height: fit-content;
font-size: 20px;
font-weight: 700;
text-align: center;
color:var(--primary);
}
#front-page p.front-graph_cost{
font-weight: 700;
color: #fff;
position: absolute;
top: 0;
bottom:0;
margin: auto;
}
    #front-page .front-cost__item_after p.front-graph_cost{top:unset;bottom:24px;}
#front-page .front-graph_cost span{font-size: 32px;}
.front-graph__list{flex: 1;}
.front-graph__list li{
font-size: 14px;
line-height: 144%;
padding-left: 16px;
color: var(--text-gray);
position: relative;
}
.front-graph__list li:before{content: "※";position:absolute;top: 0;left: 0;}
.front-graph__arrow{
width: 56px;
height: auto;
position: absolute;
top: 0;
left: 0;
right: 0;
margin: auto;
}
.front-cost__item_before .front-graph__bottom{height: 100%;}
#front-page .front-cost__item_before p.front-graph_cost{top: 0;bottom: 0;margin: auto;}
.front-cost__item_after .front-graph__bottom{height: 85px;}

.front-graph__point{width: 25%;height: 362px;position: relative;}
.front-graph__point_contents{
position: absolute;
top:0;
left:0;
width:176px;
height:auto;
aspect-ratio: 1 / 1;
background-image: url("../images/front/front-fv__license_bg.png");
background-position: center;
background-repeat: no-repeat;
background-size:contain;
display: grid;
align-items: center;
align-content: center;
justify-content: center;
}
#front-page p.front-graph__point_text{
font-size: 24px;
font-weight: 700;
color:var(--primary);
line-height: 112%;
text-align: center;
}
.front-graph__point_text small:first-of-type{font-size: 14px;line-height: 144%;}
.front-graph__point_text small:nth-of-type(2){font-size: 32px;}
.front-graph__point_text small:last-of-type{font-size: 20px;line-height: 112%;}
.front-graph__point_text span{font-size: 40px;line-height: 112%;}
.front-graph__point_mirai{
position: absolute;
bottom:0;
right:-29px;
width: 195px;
height: auto;
}

/*======== plan ========*/
#front-plan{
width: 90%;
max-width:984px;
margin: 80px auto;
display: grid;
justify-items: center;
}
#front-plan h2{width: 100%;}
.front-plan__list{
width: 100%;
height: auto;
border:1px solid var(--border-primary);
border-radius:16px;
overflow: hidden;
display: flex;
gap: 1px;
background-color: var(--border-primary);
margin: 28px 0 48px 0;
}
.front-plan__item{flex:1;}
.front-plan__title{
width: 100%;
height: 118px;
background-color: var(--bg_secondary);
display: grid;
gap: 8px;
align-content: center;
justify-items: center;
}
.front-plan__title h3{
font-size: 32px;
font-weight: 700;
line-height: 100%;
letter-spacing: 4%;
color: var(--primary);
margin: 0;
padding: 0;
}
.front-plan__title h4{
font-size: 16px;
font-weight: 700;
color: var(--accessibie);
margin: 0;
padding: 0;
line-height: 100%;
}
.front-plan__content{
width: 100%;
height:calc(100% - 118px);
text-align: center;
padding:32px 0;
background-color: #fff;
display: grid;
align-content: start;
gap: 16px;
}
#front-page p.front-plan__price_month{font-size: 20px;font-weight: 700;}
#front-page .front-plan__price_month strong{font-size: 40px;}
#front-page p.front-plan__price_first{
font-size: 14px;
font-weight: 600;
color: var(--text-gray);
margin-top:12px;
}
#front-page .front-plan__price_first strong{font-size: 20px;}
#front-page p.front-plan__caption {min-height: 70px;}
.front-plan__image{
width: 100%;
height: 218px;
display: grid;
justify-content: center;
align-items: center;
}
.front-plan__image img{
width: 230px;
height: auto;
display: block;
margin: 0 auto;
}

/*======== works ========*/
#front-works .slider_overflow__head {
border-top: 1px solid var(--border-primary);
width: 90%;
max-width: 984px;
padding-top: 80px;
margin: 0 auto;
}
#front-works .slider_overflow__inner {max-width: 984px;margin: 32px auto 40px auto;}
.slider_overflow.front-works__list,.front-works__list .slick-track {align-items: flex-start;}
.front-works__item{
width: 472px;
margin-right:40px;
display: grid;
gap: 16px;
text-align: left;
flex-shrink: 0;
}
.front-works__logo{
width:100%;
height:55px;
display:grid;
align-content: center;
justify-content: center;
overflow: hidden;
}
.front-works__logo img{height:55px;width: auto;}
.front-works__thumbnail{
width: 100%;
height: 320px;
overflow: hidden;
background-color: #fff;
display: grid;
align-content: center;
justify-content: center;
border-radius: 16px;
}
#front-page .front-works__thumbnail img{width:100%;max-width: unset;height:auto;}
#front-page p.front-works__title{font-size: 20px;font-weight: 700;}
#front-page p.front-works__type{
width:fit-content;
height: auto;
border-radius: 80px;
padding: 8px 12px;
background-color: var(--tag-bg);
color:var(--tag_primary);
font-weight: 700;
line-height: 100%;
}
.front-works__company{
font-size: 16px;
line-height: 144%;
font-weight: 500;
margin: 0;
padding: 0;
}
.front-works__link{
font-size: 14px;
font-weight: 500;
color:var(--accessibie);
text-decoration: underline;
margin-top: -8px;
}
.front-works__link .arrow_icon {
width: 6px;
height: 10px;
color: var(--accessibie);
margin-left: 8px;
}
.front-works__link .arrow_icon::before,.front-works__link .arrow_icon::after {
width: 7.7px;
height: 1.5px;
top: calc(50% - 0.75px);
background-color:var(--accessibie);
transform-origin: calc(100% - 0.75px) 50%;
}
.front-works__link .arrow_icon::before{transform: rotate(43.35deg);}
.front-works__link .arrow_icon::after{transform: rotate(-43.35deg);}

/*======== column ========*/
.front-column__wrapper{
width: 90%;
max-width: 984px;
height: 220px;
border: 1px solid var(--border-primary);
border-radius: 16px;
overflow: hidden;
background-color: #fff;
display: flex;
align-items: center;
gap: 6%;
margin: 0 auto 120px auto;
}
.front-column__image{
width: 51%;
height: 100%;
background-color:var(--bg_gray);
background-image: url(../images/front/front-column__bg.png);
background-position: center;
background-repeat: no-repeat;
background-size: cover;
}
.front-column__contents{width: fit-content;}
#front-page .front-column__contents h2{font-size: 28px;line-height: 136%;font-weight: 700;}
#front-page .front-column__contents .front__btn{
width: fit-content;
max-width: unset;
height: 40px;
font-size: 18px;
padding: 10px 24px;
margin-top: 16px;
gap: 8px;
filter: drop-shadow(0px 9px 8px rgba(80, 67, 180, 0.08));
}
.front-column__contents .front__btn .arrow_icon{width: 7px;height: 12px;}
.front-column__contents .front__btn .arrow_icon:before,.front-column__contents .front__btn .arrow_icon:after{
top: calc(50% - 1px);
width: 9.1px;
height: 2px;
transform-origin: calc(100% - 1px) 50%;
}
.front-column__contents .front__btn .arrow_icon:before{transform: rotate(45deg);}
.front-column__contents .front__btn .arrow_icon:after{transform: rotate(-45deg);}

/*======== cta ========*/
#front-cta{
width: 100%;
height: 360px;
background-image: url("../images/front/front-fv__top_bg.png");
background-position: top center;
background-repeat: no-repeat;
background-size: cover;
display: flex;
justify-content: center;
align-items: center;
gap: 6%;
padding: 0 5%;
}
.front-cta__contents{width: fit-content;}
#front-cta .front-cta__contents h2{
font-size: 48px;
line-height: 112%;
font-weight: 800;
margin-bottom: 16px;
color: #fff;
}
#front-cta .front-cta__contents h2 small {font-size: inherit;}
#front-page p.front-cta__copy{
font-size: 24px;
line-height: 100%;
font-weight: 600;
color: #fff;
}
.front-cta__contents .front__cta_btn{width: fit-content;margin-top: 38px;max-width: unset;}
#front-cta img{width: 247px;height: auto;}

/*======== news ========*/
.section-top-news{padding-bottom: 120px;}
#front-page .section-top-news h2.title-common-primary {font-size:48px;margin-bottom: 24px;}
.list-top-news .list-wrapper {display: grid;gap: 48px;}
.list-top-news .list-item {border-bottom: none;padding: 0;margin: 0;}
.list-top-news .item-wrapper {display: flex;gap: 32px;}
.list-top-news .item-inner {margin: 0;gap: 24px;}
#front-page .list-top-news .item-time {padding: 0;width: fit-content;font-size: 18px;}
.section-top-news .front__btn_wrapper {display: grid;justify-items: center;}
#front-page .section-top-news .front__btn{

}

@media print, (max-width: 1063px){
#front-page h2{font-size: 32px;}

.arrow_icon{width: 8px;height: 15px;}
.arrow_icon::before,.arrow_icon::after {
width: 10.9px;
height:3px;
top: calc(50% - 1px);
transform-origin: calc(100% - 1px) 50%;
}
.arrow_icon::before {transform: rotate(47.3deg);}
.arrow_icon::after {transform: rotate(-47.3deg);}

#front-page .front__btn,#front-page .section-top-news .front__btn{max-width:300px;height: 58px;padding: 20px 24px;font-size: 18px;}
.front__cta_btn{max-width: 323px;height: 62px;padding: 16px 24px;}
#front-page p.front__cta_btn_text,.front__cta_btn_text span{font-size: 24px;}
#front-page p.front__cta_btn_text {width: 100%;position: relative;}
.front__cta_btn .arrow_icon {
width: 13px;
height: 22px;
position: absolute;
right: 0;
top: 0;
bottom: 0;
margin: auto;
}
.front__cta_btn .arrow_icon::before,.front__cta_btn .arrow_icon::after {
width: 16.9px;
height: 4px;
top: calc(50% - 2px);
transform-origin: calc(100% - 2px) 50%;
}
.front__cta_btn .arrow_icon::before {transform: rotate(42.25deg);}
.front__cta_btn .arrow_icon::after {transform: rotate(-42.25deg);}

.slick-arrow{width: 40px;height: 40px;}
.slider_overflow__arrows{gap: 8px;}
.slider_overflow__wrapper .front__btn{margin-bottom: 60px;}

.front-fv__top_wrapper,
.front-fv__bottom_wrapper,
.front-before__list,
.front-functions__inner,
.front-functions,
.front-service,
.front-point,
.front-introduction__contents_point,
#front-support,
#front-plan,
#front-works .slider_overflow__head,
#front-works .slider_overflow__inner,
.front-column__wrapper,
.front-cta__contents,
.section-top-news .wrapper
{max-width: 960px;}

/*======== FV ========*/
.front-fv__top {height: 468px;}
.front-fv__top_text h1{font-size:57px;line-height: 116%;}
#front-page .front-fv__top_text h1 strong,
#front-page .front-fv__top_text h1 strong.front-fv__top_text_name
{font-size: 76px;}
#front-page .front-fv__top_text h1 strong span {font-size: 90px;line-height: 100%;}
#front-page p.front-fv__top_copy{
font-size:25px;
line-height: 100%;
font-feature-settings: "palt";
margin: 14px 0 43px 0;
}
.front-fv__license_mirai{width:268px;}
#front-page p.front-fv__license_text{width: 207px;font-size: 18px;line-height: 128%;}
#front-page .front-fv__license_text strong{font-size: 36px;}

.front-fv__bottom{height:220px;}
.front-fv__bottom_wrapper {height:184px}
.front-fv__bottom img{width: 321px;}
.front-fv__bottom_list li {font-size: 14px;}
#front-page .front-fv__bottom_text p{font-size: 15px;}
#front-page p.front-fv__bottom_copy {font-size:28px;}
#front-page .front-fv__bottom_copy strong{font-size: 32px;}
#front-page .front-fv__bottom_copy strong .Inter_font {font-size:40px;line-height: 104%;}
.front-fv__bottom_copy small{font-size:19px;}

/*======== award ========*/
#front-page p.front__copy, #front-page .front-achievement__media_item .front__copy span {line-height: 120%;}

/*======== introduction ========*/
.front-before__list {gap: 3%;}

#front-page .front-after__text h2{font-size: 32px;}
#front-page .front-after__text .front__copy{font-size:20px;line-height: 144%;font-feature-settings: "palt";}

.front-service{padding: 46px 3.5% 40px 3.5%;}
.front-service__list {gap: 20px;}
.front-service__image{height: 200px;}

.front-flow{padding:40px 4%;}
.front-flow__list {gap: 3.2%;}
.front-flow__item {width: 164px;}
.front-flow__image {padding: 8%;height: 213px;}
.front-flow__arrow{
width: 38px;
height: 32px;
top: 90px;
right: -19px;
}
.front-flow__item:nth-child(3) .front-flow__arrow{top: 52px;}
.front-flow__item:nth-child(3) .front-flow__arrow:last-child{top:147px}

/*======== support ========*/
#front-page p.front-result__content {font-size: 28px;}
#front-page p.front-result__content .SF_font {font-size: 44px;}

/*======== plan ========*/
.front-plan__title h4 {font-size: 14px;}

/*======== cta ========*/
.front-cta__contents .front__cta_btn {width: 360px;text-align: center;}

}

@media print, (max-width: 959px){
#front-page p{padding: 0;font-size: 16px;}
#front-page p.front__copy{font-size: 16px;line-height: 120%;margin-bottom: 4px;}
#front-page h2{font-size: 24px;line-height: 136%;}
#front-page strong{font-size: 20px;font-weight: 700;}
#front-page strong span{font-size: 24px;}
#front-page strong small{font-size: 16px;}
#front-page .front-sp{display:block;}
#front-page .front-pc{display: none;}
#front-page dt, #front-page dd {width: 100%;}
#front-page img{max-width: unset;}

#front-page p.front__cta_btn_text {text-align: left;}

.slider_overflow{overflow: visible;}
.slider_overflow .slick-list{overflow: hidden;}
#front-page .slider_overflow__head h2 {font-size: 28px;}

.front-fv__bottom_wrapper,
.front-before__list,
.front-service,
.front-introduction__contents_point,
#front-support,
#front-plan,
.front-column__wrapper,
.front-cta__contents
{max-width: 360px;}

.front-after__text,.front-service__list,.front-flow__list{flex-wrap: wrap;}

/*======== FV ========*/
.front-fv__top{height: 520px;background-image: url(../images/front/front-fv__top_bg_sp.png);}
.front-fv__top_wrapper {
width: 90%;
max-width: 329px;
display: grid;
align-content: flex-start;
gap:3.84%;
position: relative;
padding:6.15% 0;
}
.front-fv__top_text, .front-fv__license {width:100%;}
.front-fv__top_text h1{font-size: 36px;line-height: 114%;}
#front-page .front-fv__top_text h1 strong{font-size: 44px;}
#front-page .front-fv__top_text h1 strong.front-fv__top_text_name {font-size: 56px;}
.front-fv__top_text h1 strong.front-fv__top_text_name{font-size: 56px;}
#front-page .front-fv__top_text h1 strong span {font-size: 66px;line-height: 112%;}
#front-page p.front-fv__top_copy{
font-size:17px;
line-height: 112%;
font-feature-settings: "palt";
margin: 4px 0 0 0;
padding: 0;
}
#front-fv .front__cta_btn{position: absolute;bottom:6.15%;padding: 4.9% 7.4%;}
.front-fv__license{aspect-ratio:325 / 214;}
.front-fv__license_mirai{width: 52%;}
#front-page p.front-fv__license_text{
width: 52%;
font-size: 16px;
line-height: 120%;
top: 10%;
bottom: 0;
margin: auto;
padding: 0;
}
#front-page .front-fv__license_text strong{font-size: 28px;}
.front-fv__license_shine:nth-of-type(2){width:7%;left:inherit;right:13%;}
.front-fv__license_shine:nth-of-type(3){width:10%;bottom:inherit;top:5%;right:0;}
.front-fv__license_shine:last-of-type{width:7%;bottom:0%;right:43%;}

.front-fv__bottom{height: auto;}
.front-fv__bottom_wrapper {
width:89%;
height: auto;
display: grid;
gap: 18px;
justify-items: center;
padding-top: 24px;
}
.front-fv__bottom img {order: 2;width:90%;margin-bottom: -32px;}
.front-fv__bottom_text {max-width: unset;gap: 16px;padding-right: 0;}
#front-page .front-fv__bottom_text p{font-size: 14px;margin-top: -4px;}
.front-fv__bottom_list {flex-wrap: wrap;justify-content: center;}
.front-fv__bottom_list li{padding: 8px 12px;line-height: 100%;margin-bottom: 13px;}
.front-fv__bottom_list li::before {
width: 23px;
height: 13px;
clip-path: polygon(0 0, 100% 0%, 50% 100%);
bottom: -6.5px;
}
#front-page p.front-fv__bottom_copy {text-align: center;font-size: 24px;}
#front-page .front-fv__bottom_copy strong{font-size: 28px;}
#front-page .front-fv__bottom_copy strong .Inter_font {font-size: 30px;line-height: 104%;}
.front-fv__bottom_copy small{font-size: 16px;}

/*======== award ========*/
.front-achievement__award {margin: 30px 0 20px 0;gap: 14px;}
.front-achievement__list {
display: grid;
justify-content: center;
gap: 8px;
grid-template-areas:
"top top"
"left right";
}
.front-achievement__item {width: 100%;gap: 8px;justify-content: center;}
    .front-achievement__item:first-child{grid-area: top;}
    .front-achievement__item:nth-child(2){grid-area:left;}
    .front-achievement__item:last-child{grid-area: right;gap: 13px;}
.front-achievement__item:before, .front-achievement__item:after{width:13px;height: 38px;}
#front-page p.front-achievement__item_text {font-size: 14px;font-weight: 400;line-height: 144%;}
    #front-page .front-achievement__item:first-child .front-achievement__item_text {font-size: 13px;}
    #front-page .front-achievement__item:last-child .front-achievement__item_text{font-size: 14px;}
#front-page .front-achievement__item_text strong{font-size: 16px;}
    #front-page .front-achievement__item:first-child .front-achievement__item_text strong {font-size: 20px;}
#front-page .front-achievement__item_text strong span,#front-page .front-achievement__item:last-child .front-achievement__item_text strong span{font-size:24px;}
#front-page .front-achievement__item_text strong sub{font-size: 14px;bottom: 0;}
.front-achievement__caution{display:grid;gap:8px;}

.achievements-wrapper .list-item {height: 55px;margin: auto 8px auto 8px;}

.front-achievement__media{margin: 30px 0 48px 0;}
.front-achievement__media_list{width: 100%;padding:24px 0;border-radius:0;}
.front-achievement__media_item{width: 290px;margin: 0 8px;}
#front-page .front-achievement__media_item .front__copy{font-size: 20px;line-height: 136%;}
#front-page .front-achievement__media_item .front__copy span{font-size: 14px;line-height: 136%;margin-bottom: 4px;}
.front-achievement__media_thumbnail{margin-top: 18px;}
.front-achievement__media .slick-arrow {top: unset;bottom: 90px;}
.front-achievement__media .prev-arrow{left:8px;}
.front-achievement__media .next-arrow{right:8px;}

/*======== introduction ========*/
.front-before__list {width: 95%;flex-wrap: wrap;gap:24px 6.7%;margin: 24px auto;}
.front-before__list li {width: 46%;}
.front-before__image{width:164px;}
#front-page p.front-before__caption{font-size: 12px;}

.front-introduction__wrapper{border-top-width:28px;gap:56px;padding-top:40px;}
.front-introduction__wrapper:before{
border-right-width: 26px;
border-left-width: 26px;
border-bottom-width: 32px;
top:-28px;
}
.front-introduction__contents{gap:0;justify-content: center;}
.front-functions__item{width: 264px;margin-right:24px;}
.front-functions__item_img{height: 192px;padding: 24px;}

.front-point,.front-functions{padding-left: 0;}
.front-functions__inner{width: 100%;}

#front-page .front-after__text h2{font-size: 20px;line-height:144%;text-align: center;}
#front-page .front-after__text h2 strong{font-size: 24px;}
#front-page .front-after__text .front__copy{text-align: center;}
.front-after__list{
width: 95%;
max-width: fit-content;
margin: 12px auto;
display: grid;
gap: 8px;
}
.front-after__list li{font-size:16px;line-height: 144%;}
.front-after__list li:before{width:19px;height:14px;top: 4px;}
.front-after__text dd{height: 140px;overflow: hidden;}
.front-after__text dd img{
width: 152px;
display: block;
margin: 0 auto;
transform: translateY(10px);
}

.front-service{margin: 0 auto;padding:4%;}
.front-service__list{margin: 24px auto;gap: 24px;}
.front-service__image{width: 100%;height: auto;}
#front-page p.front-service__text{font-size: 16px;}

.front-flow{padding: 16px 0;flex-wrap: wrap;}
#front-page .front-flow h2{font-size: 24px;line-height: 120%;padding: 0 16px;}
.front-flow_caption{margin: 12px 16px 16px 16px;}
.front-flow__list {padding: 0 16px 0 8px;gap:32px;}
.front-flow__item{
width: 100%;
display:flex;
align-items: center;
gap: 16px;
}
    .front-flow__item:last-child {display: grid;padding-left: 8px;}
.front-flow__image{
width: 150px;
height: auto;
background-color: transparent;
border-radius: unset;
padding: 0;
position:relative;
z-index:1;
}
    .front-flow__item:first-child .front-flow__image{padding-bottom: 16px;}
    .front-flow__item:nth-child(2) .front-flow__image{padding:10px 0 16px 0;}
    .front-flow__item:nth-child(3) .front-flow__image{padding:16px 0;}
    .front-flow__item:last-child .front-flow__image{width:100%;padding-bottom: 27px;}
.front-flow__image:after {
content: "";
position: absolute;
width: 129px;
height: 100%;
background-color: #fff;
border-radius: 16px;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: auto;
z-index: -1;
}
    .front-flow__item:last-child .front-flow__image:after{
    top:unset;
    bottom:0;
    width: 100%;
    height:calc(100% - 16px);
    }
.front-flow__image img{height: auto;margin: 0;}
    .front-flow__item:first-child img{width:131px;}
    .front-flow__item:nth-child(2) img{width:100%;}
    .front-flow__item:nth-child(3) img{width:98px;margin: 0 auto;}
    .front-flow__item:last-child img{width:257px;margin: 0 auto;}
.front-flow__arrow,.front-flow__item:nth-child(2) .front-flow__arrow,.front-flow__item:nth-child(3) .front-flow__arrow{
width: 32px;
height: 26px;
transform: rotate(90deg);
clip-path: polygon(0 26.9%, 53.1% 26.9%, 53.1% 0, 100% 50%, 53.1% 100%, 53.1% 73.1%, 0 73.1%);
top: unset;
}
    .front-flow__arrow,.front-flow__item:nth-child(2) .front-flow__arrow{bottom: -20px;right: unset;left:53px;}
    .front-flow__item:nth-child(3) .front-flow__arrow{bottom: -20px;right: unset;left: 40px;}
    .front-flow__item:nth-child(3) .front-flow__arrow:last-child {top: unset;left: 104px;transform: rotate(45deg);}
#front-page p.front-flow__text{font-size: 16px;width:calc(100% - 150px);height: fit-content;}
#front-page .front-flow__item:last-child .front-flow__text {width: 100%;}

.front-introduction__contents_point{background-position-y: 218px;background-size: 313px auto;}
.front-point__wrapper {width: 100%;min-width: unset;}
#front-page p.front-point__caption {margin: 16px 0 152px 0;}
.front-templates{
padding: 16px;
border:1px solid rgba(80,67,180,0.16);
border-radius: 8px;
background-color:#fff;
width:fit-content;
}
.front-templates_list{margin-top:8px;display: grid;}
.front-templates_list li {
width: 100%;
height: auto;
border: none;
background-color: transparent;
padding: 0;
font-weight: 500;
line-height: 100%;
color: var(--primary);
}
.front-templates_list li:before{content: "・";}

#front-page .front-functions .slider_overflow__head h2 {font-size: 24px;}
#front-page p.front-functions__item_text{font-size: 16px;}
.front-functions__item_img img{height: 144px;}
.front-functions__item:nth-child(3) .front-functions__item_img img {height: auto;width: 100%;}

/*======== support ========*/
#front-support {overflow: hidden;padding: 53px 0 75px 0;}
.front-support__wrapper {
border-radius: 16px;
padding:16px 14px;
margin-top: 16px;
gap: 24px;
}
.front-range {flex-wrap: wrap;gap: 24px;margin: 0;}
#front-page dt.front-range__count {
border-radius: 14px;
display: flex;
flex-wrap: wrap;
padding: 24px;
align-items: center;
justify-content: space-between;
gap: 16px 0;
filter: drop-shadow(2px 6px 21px rgba(0, 0, 0, 0.08));
}
.front-range__count h3 {text-align: left;font-size: 14px;}
#front-page p.front-range__count_content {margin: 0;font-size: 24px;}
#callCount {font-size: 40px;}
#callRange::-moz-range-thumb {width: 20px;height: 20px;}
#front-page p.front-range__count_caption {font-size: 12px;margin-top: 0;}
.front-result__list{gap: 16px;}
.front-result__item {flex-wrap: wrap;gap: 8px;}
.front-result__item h4{font-size: 14px;}
#front-page p.front-result__content{font-size: 24px;}
#front-page p.front-result__content .SF_font{font-size: 32px;}
#front-page p.front-result__caption{font-size: 12px;text-align: left;}

.front-cost{padding: 24px;flex-wrap: wrap;gap:20px;}
.front-cost__contents_wrapper {width: 100%;}
.front-cost__contents {gap: 8%;}
.front-cost__contents.front-graph {border-bottom: 1px solid var(--accessibie);height:auto;gap: 7%;}
#front-page .front-cost__name p{font-size: 16px;line-height: 120%;}
.front-graph_wrapper{border-bottom:none;height: 288px;}
#front-page .front-cost__contents{display: flex;}
.front-graph__bottom{width: 78%;}
.front-graph__top{width: calc(78% - 1px);height: 227px;}
.front-cost__item_after .front-graph__bottom{height: 61px;}
#front-page p.front-graph_name {
width: fit-content;
font-size: 12px;
position: absolute;
left: 0;
right: 0;
bottom: 80px;
margin: auto;
writing-mode: vertical-rl;
}
#front-page p.front-graph_name span {writing-mode: horizontal-tb;line-height: 100%;}
#front-page p.front-graph_cost{font-size: 14px;color: var(--primary);position: static;}
#front-page .front-graph_cost span{font-size: 24px;}
.front-graph__top img {
width: 160px;
height: auto;
position: absolute;
top: 4px;
left: -20px;
}
.front-graph__arrow {width: 44px;}
.front-graph__list{margin-top: 8px;}
.front-graph__list li{font-size: 12px;padding-left: 12px;}

.front-graph__point {
width: 100%;
max-width: 272px;
height: auto;
aspect-ratio: 272 / 167;
margin: 0 auto;
}
.front-graph__point_contents{width:59%;}
#front-page p.front-graph__point_text{line-height: 80%;}
.front-graph__point_mirai{width:49%;right:0;}

/*======== plan ========*/
#front-plan {margin: 0 auto;padding-top: 0;}
#front-page #front-plan h2{font-size:28px;}
.front-plan__list {
flex-wrap: wrap;
background-color: unset;
border: none;
gap: 16px;
margin: 20px 0 30px 0;
}
.front-plan__item {
flex: unset;
width: 100%;
border: 1px solid var(--border-primary);
border-radius: 16px;
overflow: hidden;
}
.front-plan__title {height: 107px;gap: 4px;}
.front-plan__title h4 {line-height: 144%;font-size: 16px;}
.front-plan__content {
padding: 24px;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
gap: 8px;
}
.front-plan__price {width: 100%;}
#front-page p.front-plan__caption {
width: calc(100% - 108px);
min-height: unset;
text-align: left;
line-height: 160%;
order: 2;
}
.front-plan__image{width: 100px;height: 88px;}
.front-plan__image img{width:100%;}

/*======== works ========*/
#front-works .slider_overflow__wrapper {display: grid;}
#front-works .slider_overflow__head {margin-top: 56px;padding-top: 60px;}
#front-works .slider_overflow__inner {width: 100%;margin-left: 5%;max-width: 100vw;}
.front-works__item{width: 237px;margin-right:24px;gap: 8px;}
.front-works__logo{height: 33px;}
.front-works__logo img{height: 33px;}
.front-works__thumbnail{height:160px;}
#front-page p.front-works__title{font-size:16px;line-height: 144%;}
#front-page p.front-works__type{font-size:14px;}
.front-introduction__title small {font-size: 16px;margin-bottom:4px;}

/*======== column ========*/
.front-column__wrapper{
width: 93%;
height: auto;
flex-wrap: wrap;
gap: 0;
margin-bottom: 32px;
}
.front-column__image{height: 160px;}
#front-page .front-column__contents {padding: 24px;}
#front-page .front-column__contents h2{font-size: 24px;}
#front-page .front-column__contents .front__btn {height: 40px;padding: 8px 24px;}
.front-column__contents .front__btn .arrow_icon{margin-top: 2px;}

/*======== cta ========*/
#front-cta {position: relative;height: auto;padding: 32px 8%;}
.front-cta__contents {width: 100%;z-index: 1;}
#front-cta .front-cta__contents h2{font-size: 36px;line-height: 120%;margin-bottom:12px;}
#front-cta .front-cta__contents h2 small{font-size: 32px;}
#front-page p.front-cta__copy{font-size: 18px;line-height: 144%;}
.front-cta__contents .front__cta_btn {width:100%;margin-top:16px;}
#front-cta img {
position: absolute;
right: 15%;
bottom: 78px;
width: 120px;
z-index: 0;
}

/*======== news ========*/
#front-page .section-top-news h2.title-common-primary{font-size: 28px;}
.section-top-news{padding-bottom: 86px;}
.section-top-news .wrapper {
width: 90%;
max-width: 345px;
margin: 0 auto;
padding: 0;
}
.list-top-news .list-item {border-bottom: 1px solid #e0ebeb;padding-bottom: 24px;}
.list-top-news .list-wrapper{gap:24px;}
.list-top-news .item-wrapper {display: grid;gap: 8px;}
.list-top-news .item-inner {gap: 18px;}
}

@media only screen and (max-width: 767.98px) {
#front-page {margin-top:6.3rem;}
}

@media only screen and (max-width:375px) {
#front-cta{padding: 32px 5%;}
}