@charset"UTF-8";:root{--main_color:#000;--main_color_hover:#111;--font_color:#000;--font_color_link:#111}html{font-size:.833vw;font-size:62.5%;;}body{color:var(--font_color);animation:fadeIn 2s ease 0s 1 normal;-webkit-animation:fadeIn 2s ease 0s 1 normal}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}a[href^="tel:"]{color:inherit;text-decoration:none;pointer-events:none}a,a:visited,a:hover{color:#000}p,td,th,li,dt,dd,input,textarea,.entryBody,.entryMore{font-size:1.4rem}img{max-width:100%;height:auto}body,h1,h2,h3,h4,h5,h6,p,td,th,div,input,textarea,ol,ul,li,pre{font-family:"游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴシック Pro","Hiragino Kaku Gothic Pro",'メイリオ',Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;line-break:strict}p,td,th,li,dt,dd,.entryBody,.entryMore{line-height:1.8}td{padding:15px 10px}th{font-weight:bold;padding:15px 10px}a img:hover{transition:.3s linear;opacity:.7}.pc_none{display:none}.caution{color:#f33}.gray{background:#eee}.home .container{padding-top:0!important}.mainblock{padding:5vh 0}.main{background:#f0f0ee;padding:5vh 0}.home .main{background:#fff}.main_inner{max-width:1200px;margin:auto;padding-left:6%;padding-right:6%;margin:0 auto}.content_inner{padding-left:6%;padding-right:6%;margin:0 auto;max-width:1200px}.content{display:flex}.column_main{width:78%;background:#fff;border-radius:10px;box-sizing:border-box;padding:2% 5%;margin-right:2%;box-shadow:0 2px 4px rgba(0,0,0,.1)}.one_column{width:100%;margin:0 auto}.column_sub{width:20%;background:#fff;border-radius:10px;padding:2% 0;box-sizing:border-box;box-shadow:0 2px 4px rgba(0,0,0,.1)}.img_scale{overflow:hidden;width:100%}.img_scale img{display:block;transition-duration:.5s}.img_scale img:hover{transform:scale(1.05);transition-duration:.5s}.flex_box{display:-webkit-box;display:-ms-flexbox;display:flex;display:-webkit-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.btn{margin:5vh 0;background:#000;display:inline-block;border-radius:10px;border:solid 2px #000;transition-duration:.3s;font-weight:700}.btn a{padding:1rem 5rem;display:block;color:#fff}.btn a i{margin-right:10px;margin-left:-10px}.btn:hover{background:#fff;transition-duration:.3s}.btn:hover a{color:#000;transition-duration:.3s}.btn02 a{height:44.5px;display:flex;justify-content:center;width:350px;align-items:center;color:#22A00B;margin:auto;background:rgb(255 255 255);border-radius:24px;font-size:1.5rem;font-weight:700;border:2px solid;box-sizing:border-box;gap:8px}.btn02{margin:30px 0}.btn02 a{margin:0 auto;height:60px;border-radius:10px}.center{text-align:center}.mincho{font-family:"游明朝",YuMincho,'HG正楷書体-PRO',"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif}.pagetop{z-index:9999;cursor:pointer;position:fixed;right:80px;bottom:60px}.navigation{margin-top:50px}.navigation a{color:#111;display:block}.navigation .alignleft{float:left;width:49%;background:#f9f9f9;box-sizing:border-box;padding:10px}.navigation .alignright{float:right;width:49%;text-align:right;background:#f9f9f9;box-sizing:border-box;padding:10px}.clearfix:after{content:".";display:block;clear:both;line-height:0;font-size:0;height:0;visibility:hidden}.clearfix{display:inline-block}.clearfix{display:block}.maintitle h2{font-size:min(2.8rem,5vw);position:relative;line-height:1.5}.maintitle h2 span{display:block;font-size:min(1.4rem,3vw);margin-bottom:.5rem;font-family:"游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴシック Pro","Hiragino Kaku Gothic Pro",'メイリオ',Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;line-break:strict}.maintitle h3{text-align:center;font-size:min(2.0rem,3.5vw);font-weight:700}.contentNavi{text-align:center;padding-bottom:8px;width:100%;margin:0 0 8px;background:url(./cmn/images/hr_bg.gif) left bottom repeat-x}.contentNavi a,.contentNavi strong,.contentNavi span.current_page{display:inline-block;text-decoration:underline;text-align:center;line-height:1;font-size:1.8rem;margin:0 5px 0 0;padding:5px 8px;border:2px solid #efefef;color:#1C55FF;border-color:#efefef;background-color:#f5f5f5}.contentNavi strong,.contentNavi a:hover{text-decoration:none;color:#101113;border-color:#ddd;background-color:#fff}.contentNavi span.current_page{text-decoration:none;color:#101113;border-color:#ddd;background-color:#fff}.pankuzu{background:#333;padding:5px;color:#fff}.pankuzu p{max-width:1200px;margin:0 auto;text-align:right;font-size:.8rem}.pankuzu a,.pankuzu a:link,.pankuzu a:visited{color:#fff}.pankuzu i{margin:0 10px}.header{width:100%;padding-right:6%;padding-left:6%;z-index:9999;position:absolute;box-sizing:border-box;transition-duration:.8s}.header.scroll{position:fixed;background:rgba(255,255,255,.9);box-shadow:0 0 9px 3px rgb(41 41 41/25%);transition-duration:.8s}.header_inner{padding:4rem 0;transition-duration:.3s}.scroll .header_inner{padding:2rem 0;box-sizing:border-box;transition-duration:.3s}.header_logo{float:left;line-height:35px}.header_logo img{height:40px;vertical-align:middle}.header_logo a{display:block}.header_menu{margin:0 auto;height:35px;float:right;width:calc(100% - 250px)}.header_menu ul{margin:0 auto;padding:0;display:inline-block}.header_menu .header_menu_contact{float:right}.header_menu .header_menu_contact a{background:#2f564a;color:#fff;padding:0 20px;border-radius:20px;display:inline-flex;align-items:center;height:35px;line-height:1}.header_menu .header_menu_contact a:before{display:none}.header_menu ul,.header_menu ul li,.header_menu ul li a{line-height:35px;font-weight:500}.header_menu ul li{display:inline-block;margin:0 0 0 15px;vertical-align:middle;font-size:1.3rem;font-weight:700}.header_menu ul li i{transition-duration:.5s}.header_menu ul li.clicked i{-ms-transform:rotate(180deg);-webkit-transform:rotate(180deg);transform:rotate(180deg);box-sizing:border-box;transition-duration:.5s}.header_menu ul li:first-of-type{margin-left:0}.header_menu ul li a{position:relative;display:inline-block;cursor:pointer}.header_menu ul li a:before{position:absolute;content:'';left:0;bottom:0;height:2px;background-color:#000;transition:all .3s;transform:scale(0,1);transform-origin:center top;width:100%}.header_menu ul li:hover a:before{transform:scale(1,1)}.header_menu ul li.tel{font-size:1.8rem;line-height:1;margin-top:-.5em}.header_menu ul li.tel span{font-size:1.1rem;display:block;text-align:center}.header_menu ul li.tel:hover a:before{width:0}.header_menu_drawer_wrap{display:none}.catcharea{position:relative;font-feature-settings:"palt";margin-bottom:5vh}.catcharea_inner{bottom:5%;left:5%;margin:auto;position:absolute;color:#fff}.catcharea h1{font-weight:700;font-size:3.8rem;line-height:6rem;letter-spacing:.05em;margin-bottom:15px}.catcharea h2{font-weight:700;font-size:2.4rem;letter-spacing:.05em;margin-bottom:2vh}.catcharea p{font-weight:700;font-size:1.5rem;margin-bottom:10px}.catcharea_slick{margin:0;padding:0}.catcharea_slick .slick-slide img{border-radius:10px}.catcharea_slick .slick-slide img{opacity:.7}.catcharea_slick .slick-slide{background:#000;border-radius:10px}.catcharea_slick .slick-slide{margin-right:.5vw!important;margin-left:.5vw!important}.catcharea_slick{opacity:0;transition:opacity .5s ease}.catcharea_slick.slick-initialized{opacity:1}.catcharea_slick .slick-dots{bottom:-35px}.subcatch{display:flex;align-items:center;justify-content:center;height:200px;max-height:20vh;background:#2f564a}.subcatch h1,.subcatch span{text-align:center;font-size:2.0rem;color:#fff;box-sizing:border-box}.subcatch h1 span{display:block;font-size:1.1rem}.footer{background:#fff}.footer_inner{max-width:1200px;padding:60px 0 60px;margin:0 auto}.footer .information{float:left}.footer .information img{height:40px}.footer .information p{font-size:1.2rem;line-height:1.8;margin-bottom:15px}.footer .information span.footer_tel a{color:#000!important}.footer .information a{display:block}.footer .footer_menu{float:right;width:800px}.footer .footer_menu ul{list-style:none;padding:0;margin:0;display:flex}.footer .footer_menu ul li{font-size:1.5rem;font-weight:500;margin-right:20px}.footer .footer_menu ul li a{padding:0}.copyright{padding:30px 0 90px}.copyright p{text-align:center;font-size:1.0rem}.footer_sns{margin:0 0 30px 0;padding:0;list-style:none}.footer_sns li{font-size:2.4rem;display:inline-block;margin-right:10px}.footer_sns li:last-child{margin-right:0}.footer_fixarea{display:block;width:100%;position:fixed;left:0;background:rgba(20,20,20,.9);color:#fff;z-index:10;bottom:-150px;transition-duration:.5s;box-sizing:border-box;padding:20px 0;font-weight:bold;text-align:center}.footer_fixarea.show{bottom:0;transition-duration:.5s}.footer_fixarea ul{margin:0;padding:0;list-style:none}.footer_fixarea ul li{display:inline-block;color:#fff;vertical-align:middle;border-radius:4px}.footer_fixarea ul li a{color:#fff}.footer_fixarea ul li:nth-child(1){background:#000;padding:10px 20px;margin:0 20px}.footer_fixarea ul li:nth-child(2){background:#22A00B;padding:10px 20px}.p_concept{padding:50px 0;overflow:hidden}.concept_flex{display:flex;flex-wrap:wrap;gap:80px;position:relative;margin:auto;max-width:1200px;align-items:center}.concept_flex_inner:nth-child(1){width:55%;padding-top:40px;padding-bottom:120px;box-sizing:border-box}.concept_flex_inner .maintitle h2{margin-bottom:30px}.concept_flex_inner:nth-child(2){position:absolute;right:-150px;width:55%;top:0}.concept_flex_inner:nth-child(2) img{border-radius:20px;width:100%}.p_concept h3{font-size:1.8rem;margin:0 0 2rem}.p_concept p{font-size:1.6rem;font-weight:700}#beforeafter{margin-top:80px;height:25vh;min-height:200px;background:url(./cmn/images/beforeafter.jpg) center center repeat-x;background-size:contain;background-position:0 0;-webkit-animation:bgroop 65s linear infinite;animation:bgroop 65s nfinite linear;position:relative}@-webkit-keyframes bgroop{from{background-position:0 0}to{background-position:-2000px 0}}@keyframes bgroop{from{background-position:0 0}to{background-position:-2000px 0}}.p_point{margin-top:80px;padding:80px 20px;background:#f6faed}.p_point .maintitle h2{margin-bottom:40px}.point_flex{display:flex;flex-wrap:wrap;background:#fff;border-radius:10px;margin:20px auto;padding:60px 50px;box-sizing:border-box;align-items:center;margin-bottom:20px}.point_flex_inner p,.point_flex_inner li{font-size:1.6rem;font-weight:700;line-height:2;letter-spacing:.01em}.point_flex_inner ul{margin-bottom:15px}.point_flex_inner h3{border-left:solid 5px #2f564a;padding-left:15px;font-size:1.8rem;font-weight:700;margin-bottom:15px}.point_flex_inner:nth-child(1){width:55%}.point_flex_inner:nth-child(2){width:40%;margin-left:5%}.p_trouble{padding-top:10vh;background:#edf4e9}.p_trouble ul{margin:5vh -1% 2.5vh;padding:0;list-style:none;display:flex;flex-wrap:wrap;justify-content:center}.p_trouble ul li{width:15.5%;height:100px;margin:0 .5%;box-sizing:border-box;background:#2f564a;color:#fff;border-radius:10px;display:flex;justify-content:center;align-items:center;text-align:center;font-size:1.5rem;font-weight:700}.p_trouble ul li a{color:#fff}p.p_trouble_copy{text-align:center;font-size:2.4rem;font-weight:700;margin:80px auto}.p_contact{padding:80px 0;background:#2f564a;color:#fff;position:relative;text-align:center;font-weight:500}.p_contact .maintitle h2{margin-bottom:.5em;position:relative;z-index:1}.p_contact .contact_box ul{display:flex;margin:4rem 0 0;padding:0;list-style:none;gap:2rem;justify-content:center}.p_contact .promise{display:flex;margin:30px auto;padding:0;list-style:none;justify-content:center;gap:10px}.p_contact .promise li{background:#fff;padding:15px 20px;border-radius:10px;font-weight:700;color:#2f564a}.p_contact .contact_box ul li{width:320px;margin:0}.p_contact .contact_box ul li a{display:flex;justify-content:space-between;padding:1.5rem 2rem;transition-duration:.5s;background:#fff;border-radius:5px}.contact_box_icon01{display:flex;width:32px;align-items:center;border-right:1px solid}.contact_box_icon02{display:flex;align-items:center;justify-content:space-between;width:calc(100% - 46px);font-size:1.5rem;font-weight:700}.p_contact .contact_box_icon02 i{width:1rem;height:1rem;display:flex;align-items:center;justify-content:center;font-size:.8rem;background:#000;color:#fff;border-radius:50%;padding:.4rem}.p_contact ul li a:hover{transition-duration:.2s;padding:1.5rem 2.5rem}.p_contact i{font-size:2rem}.p_contact .contact_tel .tel{font-size:4.0rem;font-weight:700}.p_contact .contact_tel .tel a{color:#fff}.p_contact .contact_tel .tel span{font-size:1.4rem;display:block;font-weight:400}p.contact_read{font-size:1.4rem;line-height:1.4;margin:20px auto}.p_products{padding-top:80px;padding-bottom:40px}#product.p_products{background:#f6faed}.p_products ul{margin:40px -.5%;padding:0;list-style:none;display:flex;flex-wrap:wrap}.p_products ul li{width:19%;margin:0 .5% 30px;box-sizing:border-box}.p_products ul li .img_scale{border-radius:10px}.p_products ul li i{width:100%;border-radius:10px}.p_products ul li h3{font-size:1.4rem;text-align:center;margin:1.5rem 0 1rem}.p_products ul li h3 span{display:block;font-size:1.1rem}.p_products ul li p{font-size:1.1rem}.p_news .date{list-style:none;margin:0 auto;max-width:900px;padding:0}.p_news .date li{font-size:16px;padding:25px 0;border-bottom:solid 1px #ddd}.p_news .date li a:hover{text-decoration:underline}.p_news .date li span.dateTime{font-size:12px;margin-right:20px}.p_news .date li span.news_title{font-weight:700}.p_news .date li span.dateCategory{border:solid 1px #999;padding:5px 20px;margin:0 10px 0 0;font-size:11px}.archive .date{border-top:solid 1px #ddd;list-style:none;margin:0 auto;padding:0;font-weight:normal;color:#666}.archive .date li{padding:20px 0;border-bottom:solid 1px #ccc}.archive .date li a:hover{text-decoration:underline}.archive .date li span.dateTime{margin-right:20px}.p_note{overflow-x:hidden}.p_note ul{margin:0;padding:0}.p_note li.slick-slide{-webkit-box-shadow:0 3px 10px rgb(0 0 0/10%);box-shadow:0 3px 10px rgb(0 0 0/10%);background:#fff;box-sizing:border-box;border-radius:10px;overflow:hidden;margin:0 10px 20px}.p_note li.note_list{-webkit-box-shadow:0 3px 10px rgb(0 0 0/10%);box-shadow:0 3px 10px rgb(0 0 0/10%);background:#fff;box-sizing:border-box;border-radius:10px;overflow:hidden;margin:0 10px 20px;width:30%;display:inline-block}.p_note li h3{font-size:16px;color:#000;margin-bottom:15px}.p_note .note_text{width:90%;margin:10px auto 10px;display:block}.p_note .maintitle h2{margin-bottom:30px}.wpcf7-form input[type=submit]:hover{background:#ccc}input.wpcf7-submit{border-radius:5px;padding:10px 0;width:280px;font-size:2.1rem;cursor:pointer;background:#000;color:#fff;box-sizing:border-box;border:0;margin:20px auto 0;display:block}.mailform{width:100%;max-width:800px;margin:0 auto}.mailform tr{border-top:1px solid #eee;border-bottom:1px solid #eee}.mailform th{width:180px;box-sizing:border-box;font-weight:700;font-size:1.5rem}.mailform td{width:calc(100% - 180px);box-sizing:border-box;font-size:1.5rem}.mailform textarea,.mailform input{font-size:1.5rem}.mailform .inline{display:inline-block;margin-right:5px;width:30%}.mailform input{max-width:100%}.mailform .tel,.mailform #zip,.mailform #pref{width:25%;min-width:100px}.wpcf7-text,.wpcf7-textarea{width:100%;border:0;background:#f3f3f3;min-height:40px}.wpcf7-not-valid-tip{font-weight:700!important;font-size:1.2rem!important}.required{color:#dc3232}.wpcf7 form .wpcf7-response-output{font-size:1.4rem!important;padding:20px!important;border-color:#dc3232!important;text-align:center}table.mailform{margin-bottom:40px}table.mailform th{vertical-align:top;padding:15px}table.mailform td{padding:15px}table.mailform td input,table.mailform td textarea,table.mailform td select{padding:8px;box-sizing:border-box;border:solid 1px #ddd}table.mailform td input[type=file]{padding:0;box-sizing:border-box;border:0;box-shadow:none;background:0 0;display:block;margin-bottom:10px}.privacy_check span{margin:0;vertical-align:middle}.privacy_check{font-size:1.3rem}.privacy_check span input{margin:0 10px 0 0}@media screen and (max-width:800px){table.mailform th,table.mailform td{width:100%;padding:10px 0;display:block;box-sizing:border-box}table.mailform td input,table.mailform td textarea,table.mailform td select{width:100%!important}.mailform .inline{display:inline-block;margin-right:5px;width:40%}.mailform .tel,.mailform #zip,.mailform #pref{width:20%!important;min-width:150px!important}}.contact table{max-width:580px;margin:0 auto}.contact table tr{display:block;margin-bottom:10px}.contact table th,.contact table td{display:block;padding:5px;box-sizing:border-box}.contact table td input,.contact table td select{width:100%;padding:8px;box-sizing:border-box}.contact table td textarea{width:100%!important;box-sizing:border-box}.contact table td input.sei,.contact table td input.sei_kana{margin-right:2%}.contact table td input.sei,.contact table td input.mei,.contact table td input.sei_kana,.contact table td input.mei_kana{width:49%}.contact button{background:#000;color:#fff;padding:10px 80px;border:solid 2px #000;font-size:1.8rem;cursor:pointer;transition:.3s linear}.contact button:hover{background:#fff;color:#000;transition:.3s linear}.contact tr:nth-child(even){background:0 0}.contact .contact_attention{padding:30px 0}.contact .required{color:#AC000A}.contact .koumoku{display:block;margin-top:10px;font-weight:normal}#contact_box p.form_btn a i{margin-right:15px}.pager ul.pagination{text-align:center;margin:30px 0 0;padding:0}.pager .pagination li{margin:0 2px;padding:0;display:inline-block;background:#ddd;width:50px;height:50px;text-align:center;position:relative}.pager .pagination li span{vertical-align:middle;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;display:table;color:#fff;text-decoration:none}.pager .pagination li span a{display:table-cell;vertical-align:middle}.pager .pagination li a:hover,.pager .pagination li a.active{color:#fff;background:#ccc}@media only screen and (max-width:767px){.pager .pagination li{display:none}.pager .pagination li.pre,.pager .pagination li.next{display:inline-block;width:40%;height:50px;text-align:center}.pager .pagination li.pre a,.pager .pagination li.next a{width:100%;text-align:center}.pager .pagination li.pre span a::after{content:"　前の10件へ"}.pager .pagination li.next span a::before{content:"次の10件へ　"}}.content_entry{font-size:1.4rem}.content_entry blockquote{margin:0 0 25px 0;padding:20px;font-size:.9em;background:#eee;border-radius:4px}.content_entry blockquote p:last-child{margin-bottom:0}.content_entry h1{font-size:min(2.8rem,6vw);margin:5vh 0;margin-bottom:25px}.content_entry h2{font-weight:700;font-size:min(2.8rem,6vw);margin:5vh 0 2.5vh}.content_entry h3{font-weight:700;font-size:1.8rem;margin:5vh 0 2.5vh}.content_entry h4{font-weight:700;font-size:1.6rem;margin:5vh 0 2.5vh}.content_entry iframe{max-width:100%}.content_entry p{font-size:1.4rem;margin-bottom:2rem}.content_entry .blogthumb{display:block;margin-bottom:5vh}.wpco{background-color:#fcfcfc;border:1px solid #eee;padding:.93478rem .93478rem .46739rem;margin:2vh 0}.wpco-wrapper[aria-hidden=false] .wpco{visibility:visible}@media (min-width:40em){.wpco{padding:.93478rem 1.86957rem .46739rem}}.wpco_title{margin:0 0 .46739rem!important;font-size:1.6rem!important;line-height:1.86957!important}.wpco .contents-outline ol{list-style:none;margin-left:0;padding-left:0;counter-reset:wpco;border-top:1px dotted #eee}.wpco .contents-outline li:not(:first-child){border-top:1px dotted #eee}.wpco .contents-outline li ol{margin-top:-1px}.wpco .contents-outline a{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;color:#333;padding:.46739rem 0;text-decoration:none}@media (min-width:64em){.wpco .contents-outline a:active,.wpco .contents-outline a:focus,.wpco .contents-outline a:hover{color:#888}}.wpco .contents-outline a:before{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-item-align:start;align-self:flex-start;margin:3px 10px 0 0;display:inline-block;background-color:#000;color:#fff;font-size:1.0rem;line-height:1;padding:.25em .55em .35em;counter-increment:wpco;content:counter(wpco)}.wpco .contents-outline li li>a{padding-left:1.5em}.wpco .contents-outline li li li>a{padding-left:3em}.wpco .contents-outline li li li li>a{padding-left:4.5em}.wpco .contents-outline li li li li li>a{padding-left:6em}.blog h2.wpco_title{font-weight:500;border:0;padding-bottom:0;font-size:1.8rem;margin:0 0 15px 0}.wpco{display:none}.wpco-wrapper[aria-hidden=false] .wpco{display:block}.wp-profile-box{background:#fafafa;padding:20px 15px;margin-top:5vh}.wp-profile-box__container{display:flex}.wp-profile-box__body{padding-left:20px}h3.wp-profile-box__name{margin:0 0 10px;font-size:1.5rem}.wp-profile-box__sns-accounts{margin:2vh 0 0;padding:0;list-style:none;display:flex}.wp-profile-box__sns-accounts li{margin-right:5px;font-size:1.2rem}.wp-profile-box__sns-accounts li i{margin-right:5px}.wp-profile-box__archives-btn{display:inline-block;margin-top:1.5vh;border:solid 1px #000;border-radius:5px;padding:5px 10px}.wp-profile-box__content p{font-size:1.2rem;line-height:1.8}:not(.wp_block-embed_wrapper)>.wp_oembed-blog-card_title{font-size:1.2rem!important;margin-bottom:1rem}:not(.wp_block-embed_wrapper)>.wp_oembed-blog-card_description{font-size:1.2rem!important}.wp_oembed-blog-card{margin:3vh 0}.wp-oembed-blog-card{margin-bottom:20px}img.alignright{display:block;margin:0 0 0 auto!important}img.alignleft{display:block;margin:0 auto 0 0!important}img.aligncenter{display:block;margin:0 auto!important}#sitemap_list{margin:0 auto;max-width:780px;padding:0;list-style:none}#sitemap_list li{border:1px solid #e6e6e6;margin-bottom:10px}#sitemap_list li li{border:0;list-style:none}#sitemap_list li a{display:block;padding:10px}#sitemap_list li a:before{content:"＞";font-size:1.0rem;padding-right:10px}.column_sub .widget{padding:15px;box-sizing:border-box;margin-bottom:50px}.column_sub .widget h3{margin-bottom:10px;font-size:min(1.6rem,5vw)}.column_sub .widget ul{list-style:none;margin:0;padding:0}.column_sub .widget li{border-bottom:1px solid #eee;font-size:1.3rem;font-weight:700;line-height:1.4;padding:15px 0}.column_sub .widget li ul{padding-left:.5rem}.column_sub .widget li li{font-size:1.2rem;font-weight:500;border:0;line-height:1.4;padding:5px 0}.column_sub .widget li li:before{content:"-";margin-right:5px}.post-meta{border-bottom:solid 1px #eee;padding:0 0 15px;margin:0 auto}.post-meta .post-date{display:block;margin-bottom:10px}.post-meta .post-date i{margin-right:10px}.post-meta .category a{background:#000;margin-right:5px;border-radius :3px;padding:3px 10px;font-size:1.2rem}.post-meta .category a{color:#fff}.table01,.table02{width:100%;margin-bottom:2rem}.table01:last-child,.table02:last-child{margin-bottom:0}.table01 th,.table02 th{background:#fbfbfb;border:1px solid #eef1f4;padding:2rem}.table01 td,.table02 td{background:#fff;border:1px solid #eef1f4;padding:2rem}ul.contents_list{list-style:none;max-width:1200px;width:88%;margin:0 auto min(5rem,12vw);display:flex;flex-wrap:wrap;background:#fff;padding:3rem;box-sizing:border-box;border-radius:10px;gap:1rem 3rem}.contents_list li{position:relative}.contents_list li a{display:flex;align-items:center;justify-content:center;font-weight:700}.contents_list li a:before{content:"\f358";font-family:"Font Awesome 5 Free";font-weight:900;margin-right:.4em}.clmn_wrap{display:flex;flex-wrap:wrap;margin-bottom:10rem}.clmn_wrap:last-child{margin-bottom:0}.clmn_wrap .flex_inner{width:22%;margin-right:3%}.clmn_wrap .flex_inner .maintitle h2 span{font-size:min(2.2rem,5vw)}.clmn_wrap .flex_inner:nth-child(2){width:75%;margin:auto}.clmn_wrap .flex_inner .maintitle{position:sticky;top:120px}.p_faq{padding:80px 20px}.p_faq .maintitle h2{margin-bottom:40px}.faq_block{max-width:840px;background:#fafafa;border-radius:8px;padding:24px 78px 24px 28px;box-sizing:border-box;margin:0 auto 20px;position:relative}.faq_block:last-child{margin:0 auto}.faq_block h3{font-weight:700;font-size:1.8rem;line-height:1.5;letter-spacing:.1em;display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px}.faq_block h3:before{content:"Q"}.faq_block h3 span{width:calc(100% - 30px)}.answer_area{flex-wrap:wrap;align-items:flex-start;gap:12px;max-height:0;overflow:hidden;display:flex}.answer_area{max-height:1000px;opacity:1;padding-top:10px;display:flex!important}.answer_area p{font-weight:700;font-size:1.5rem;line-height:1.5;letter-spacing:.1em;width:calc(100% - 30px)}.answer_area:before{content:"A";font-size:2rem;font-weight:700;margin-top:-4px}.answer_area p{font-weight:700;font-size:1.5rem;line-height:1.5;letter-spacing:.1em;width:calc(100% - 30px)}.answer_area:before{content:"A";font-size:2rem;font-weight:700}.privacy-policy.underPage h3{margin-bottom:20px;font-size:min(2.1rem,5vw)}.privacy-policy.underPage h4{margin-bottom:15px;font-size:min(1.6rem,5vw)}.privacy-policy.underPage ul{margin-bottom:20px}.privacy-policy.underPage p{margin-bottom:20px}.product_detail{padding:2% 5%}.product_detail h2{font-size:min(1.8rem,5vw);margin-bottom:15px}.product_detail p{margin-bottom:20px}.flex_wrap{display:flex;flex-wrap:wrap}.product_flex01 .flex_inner:nth-child(1){width:35%}.product_flex01 .flex_inner:nth-child(2){width:60%;margin-left:5%}.product_flex01{justify-content:space-between;margin-bottom:2rem}.table_product{width:100%;margin-bottom:30px}.table_product th,.table_product td{border:1px solid #eee}.table_product th{background:#fafafa;text-align:center;width:100px}.table_product td span{font-weight:900;font-size:2rem;color:red}.product_mainimg{text-align:center}.textarea p:last-child{margin:auto}a.btn02{text-align:center;display:block;background:#000;color:#fff;padding:10px;margin:auto;transition:.2s;border:1px solid;font-size:1.6rem;font-weight:700}.cstm h3{font-size:min(1.8rem,4vw);margin-bottom:1rem}.cstm p,.cstm ul{margin-bottom:1rem}.cstm p:last-child,.cstm ul:last-child{margin-bottom:0}.feature_item:last-child{margin-bottom:0}.feature_item h3{display:flex;gap:10px;align-items:center}.feature_item h3 span{height:30px;width:30px;justify-content:center;align-items:center;display:flex;background:#2f564a;color:#fff;border-radius:5px}.cstm .clmn_wrap{margin-bottom:5rem;padding-bottom:5rem;border-bottom:1px solid #ddd}.cstm .clmn_wrap:last-child{border-bottom:0}.flex_inner.inner_flex{display:flex;flex-wrap:wrap;gap:40px 4%}.flex_inner.inner_flex .feature_item,.flex_inner.inner_flex .feature_img{width:48%}.flex_inner.inner_flex .feature_img img{border-radius:10px}.point_box01{background:rgb(47 86 74/5%);border:1px dashed #2f564a;padding:2rem;border-radius:10px;margin-bottom:5rem}.point_box01:last-child{margin-bottom:0}.point_box01 h4{font-size:1.6rem;display:flex;align-items:center;gap:5px;margin-bottom:5px;color:#2f564a}.step_flex{display:flex;flex-wrap:wrap;gap:4rem 4%;margin-bottom:5rem;padding:2rem;background:#f0f0ee;border-radius:10px}.step_flex:last-child{margin:0}.step_img{width:32%;background:#fff;border-radius:10px;display:flex;align-items:center}.step_img img{border-radius:10px}.step_item{width:64%}.step_item:last-child{margin-bottom:0}.step_item h3{border-bottom:1px solid;color:#2f564a;line-height:2}.pagecatch{max-width:1200px;width:88%;margin:0 auto 5rem;border-radius:10px;overflow:hidden}.p_salon .table_scroll .table01{width:100%;table-layout:fixed}.p_salon .table01 th,.p_salon .table01 td{font-size:min(1.4rem,3.6vw);border:solid 1px #aaa;padding:1rem;border-spacing:0;border-collapse:collapse}.p_salon .table01 th{background:#f9f9f9}.p_salon span.area{background:#2f564a;color:#fff;display:block;width:fit-content;padding:2px 6px;font-size:1.1rem;padding:2px 4px}.p_salon .table01 th.shop_address{width:30%}.p_salon .table01{width:100%}.p_salon .table01 a.hotpepper,.p_salon .table01 a.instagram,.p_salon .table01 a.website{color:#fff;padding:5px 10px;border-radius:5px;font-size:11px}.p_salon .table01 a.hotpepper{background:#CD4D72}.p_salon .table01 a.instagram{background:#833ab4;background:linear-gradient(to right,#833ab4,#fd1d1d,#fcb045)}.p_salon .table01 a.website{background:#000}.p_salon .table01 .images img{object-fit:cover;width:100px;height:100px}.s_detail{display:flex}.s_detail_image{width:43%;margin-right:2%;display:flex;flex-wrap:wrap}.s_detail_text{width:55%}.s_detail_image .images{width:50%;box-sizing:border-box;border-right:solid 5px #fff}.s_detail_image .images img{object-fit:cover;width:300px;height:300px;max-width:100%}.prefecture_list{background:#efefef;border:solid 1px #aaa;padding:10px;margin-bottom:50px}.prefecture_list ul{margin:0 0 10px;padding:0;list-style:none;display:flex;flex-wrap:wrap}.prefecture_list ul h3{font-size:14px;margin-right:10px}.prefecture_list ul li{display:inline-block;font-size:14px;margin-right:10px}.prefecture_list ul li a{text-decoration:underline!important}

.custom_footer { background: #3e5c4d; color: #ffffff; padding: 60px 0 40px; } .custom_footer a { color: #ffffff !important; } .custom_footer_inner { max-width: 1200px; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: space-between; padding: 0 6%; } .custom_footer_logo { width: 25%; } .custom_footer_logo img { max-width: 160px; filter: brightness(0) invert(1); } .custom_footer_info { width: 70%; font-size: 1.2rem; line-height: 1.8; } .custom_footer_info_top { display: flex; flex-wrap: wrap; gap: 10px 20px; margin-bottom: 20px; opacity: 0.9; } .custom_footer_btns { display: flex; gap: 10px; margin-bottom: 40px; } .custom_footer_btns a { border: 1px solid rgba(255,255,255,0.5); padding: 6px 20px; border-radius: 4px; font-weight: bold; transition: background 0.3s; } .custom_footer_btns a:hover { background: rgba(255,255,255,0.1); } .custom_footer_links { display: flex; flex-wrap: wrap; gap: 10px; font-size: 1.1rem; opacity: 0.7; } .custom_footer_links a { padding-right: 10px; border-right: 1px solid rgba(255,255,255,0.3); } .custom_footer_links a:last-child { border-right: none; } @media screen and (max-width:800px) { .custom_footer_inner { flex-direction: column; } .custom_footer_logo, .custom_footer_info { width: 100%; } .custom_footer_logo { margin-bottom: 30px; } .custom_footer_info_top { flex-direction: column; gap: 5px; } .custom_footer_btns { flex-wrap: wrap; } }

/* Before After Section */
.p_beforeafter {
    background: #fdfdfd;
    padding: 80px 0;
}
.before-after-slider .ba-slide {
    outline: none;
    transition: transform 0.3s ease;
}
.before-after-slider .ba-slide img {
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.08);
    display: block;
    margin: 0 auto;
}
@media screen and (max-width: 768px) {
    .p_beforeafter {
        padding: 50px 0;
    }
}

/* ====== NEW CONCEPT & FEATURES ====== */
.p_concept_new {
    padding: 80px 0 0;
}
.concept_intro .intro_text {
    line-height: 2.0;
    font-size: 1.6rem;
    margin-top: 30px;
    letter-spacing: 0.05em;
    text-align: center;
}
.feature_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    margin-top: 50px;
}
.feature_card {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 5px 25px rgba(0,0,0,0.05);
    overflow: hidden;
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
}
.feature_card:hover {
    transform: translateY(-5px);
}
.feature_card .feature_img img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}
.feature_card .feature_body {
    padding: 30px;
    flex-grow: 1;
}
.feature_card .feature_body h3 {
    font-size: 1.8rem;
    color: #3e5c4d;
    margin-bottom: 20px;
    font-weight: bold;
    border-bottom: 2px solid #e8f0eb;
    padding-bottom: 10px;
}
.feature_card .feature_body p {
    font-size: 1.4rem;
    line-height: 1.8;
}
.concept_benefits_new {
    background: #f9fdfb;
    padding: 60px 0;
    margin-top: 80px;
}
.benefit_box {
    max-width: 800px;
    margin: 40px auto 0;
    background: #fff;
    padding: 40px;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.03);
    border-top: 4px solid #3e5c4d;
}
.benefit_list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.benefit_list li {
    font-size: 1.6rem;
    font-weight: 600;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}
.benefit_list li:last-child {
    margin-bottom: 0;
}
.benefit_list li i {
    color: #d5aa72;
    font-size: 2rem;
    margin-right: 15px;
}

@media screen and (max-width: 992px) {
    .feature_grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    .concept_intro .intro_text {
        font-size: 1.4rem;
        text-align: left;
    }
    .benefit_box {
        padding: 30px 20px;
    }
    .benefit_list li {
        font-size: 1.4rem;
    }
}
/* --- Products リニューアル用カスタムスタイル --- */
.products_hero {
    position: relative;
    width: 100%;
    min-height: 400px;
    background: url('../images/SP_Bestseller_JP.webp') center center/cover no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 60px;
}
.products_hero::after {
    content: '';
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0, 0, 0, 0.3); /* 暗めのオーバーレイで文字を立たせる */
}
.products_hero h1 {
    position: relative;
    z-index: 1;
    color: #fff;
    font-size: 3rem;
    letter-spacing: 0.1em;
    text-shadow: 0 2px 10px rgba(0,0,0,0.5);
    text-align: center;
}
.products_hero h1 span {
    display: block;
    font-size: 1.2rem;
    font-family: sans-serif;
    color: #d5aa72;
    margin-bottom: 10px;
    letter-spacing: 0.2em;
}

@media screen and (max-width: 768px) {
    .products_hero { min-height: 300px; }
    .products_hero h1 { font-size: 2.2rem; }
}

/* カード型グリッドレイアウト */
.products_grid_new {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 40px;
    padding: 0 20px;
    max-width: 1200px;
    margin: 0 auto 80px auto;
}
.product_card_new {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(0,0,0,0.05);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: #333;
}
.product_card_new:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.1);
}
.product_card_img {
    width: 100%;
    aspect-ratio: 1/1;
    overflow: hidden;
    position: relative;
    background: #f9fdfb;
}
.product_card_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}
.product_card_new:hover .product_card_img img {
    transform: scale(1.05);
}
.product_card_body {
    padding: 25px 20px;
    text-align: center;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.product_card_sub {
    font-size: 0.9rem;
    color: #d5aa72;
    font-family: sans-serif;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
.product_card_title {
    font-size: 1.4rem;
    color: #1c2d24;
    line-height: 1.4;
    margin-bottom: 0;
}
/* --- 全ページ共通: 汎用ヒーローバナー --- */
.page_hero_new {
    position: relative;
    width: 100%;
    min-height: 400px;
    background: url('../images/SP_Bestseller_JP.webp') center center/cover no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 60px;
}
.page_hero_new::after {
    content: '';
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0, 0, 0, 0.3); /* 暗めのオーバーレイで文字を立たせる */
}
.page_hero_new h1, .page_hero_new h2 { /* h2も許容する（製品ページなどで使われる場合） */
    position: relative;
    z-index: 1;
    color: #fff;
    font-size: 3rem;
    letter-spacing: 0.1em;
    text-shadow: 0 2px 10px rgba(0,0,0,0.5);
    text-align: center;
    margin: 0;
}
.products_hero h1 span, .page_hero_new h1 span, .page_hero_new h2 span {
    display: block;
    font-size: 1.2rem;
    font-family: sans-serif;
    color: #d5aa72;
    margin-bottom: 10px;
    letter-spacing: 0.2em;
}

@media screen and (max-width: 768px) {
    .page_hero_new { min-height: 300px; }
    .page_hero_new h1, .page_hero_new h2 { font-size: 2.2rem; }
}

/* EC Button Styles */
.maintitle-with-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
    flex-wrap: wrap;
    gap: 20px;
}
.ec-button {
    display: inline-block;
    padding: 12px 30px;
    background-color: #000;
    color: #fff !important;
    text-decoration: none;
    border-radius: 30px;
    font-weight: bold;
    transition: all 0.3s;
    border: 2px solid #000;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
}
.ec-button:hover {
    background-color: #fff;
    color: #000 !important;
}
@media screen and (max-width: 768px) {
    .maintitle-with-btn {
        justify-content: center;
        text-align: center;
    }
    .ec-button {
        width: 100%;
        max-width: 300px;
        text-align: center;
    }
}

/* --- FAQ/Shortcuts グリーンテーマ刷新 --- */

/* --- FAQ/Shortcuts グリーンテーマ最終調整 --- */
.contents_list {
    display: flex !important;
    flex-wrap: wrap;
    gap: 15px;
    background: #eef5f2 !important; /* よりはっきりしたグリーンの背景 */
    padding: 35px !important;
    border-radius: 20px !important;
    box-shadow: 0 10px 30px rgba(47, 86, 74, 0.1) !important;
    margin: 40px auto 60px !important;
    border: 2px solid #2f564a; /* 枠線を太く */
    justify-content: center;
}
.contents_list li {
    list-style: none !important;
    margin: 0 !important;
}
.contents_list li a {
    display: inline-block !important;
    padding: 12px 28px !important;
    background: #fff !important;
    border: 2px solid #2f564a !important;
    border-radius: 50px !important; /* より丸みを持たせる */
    font-weight: 800 !important;
    color: #2f564a !important;
    transition: all 0.4s ease !important;
    text-decoration: none !important;
    font-size: 1.5rem !important;
}
.contents_list li a:before {
    content: "\f059" !important;
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
    margin-right: 10px !important;
    color: #2f564a !important;
}
.contents_list li a:hover {
    background: #2f564a !important;
    color: #fff !important;
    transform: scale(1.05); /* 少し大きく表現 */
    box-shadow: 0 8px 20px rgba(47, 86, 74, 0.3);
}

.faq_block {
    background: #fff !important;
    border-left: 8px solid #2f564a !important; /* アクセントをより太く */
    border-radius: 0 20px 20px 0 !important;
    padding: 50px !important;
    margin-bottom: 40px !important;
    box-shadow: 0 6px 20px rgba(0,0,0,0.05) !important;
    border-top: 1px solid #eee;
    border-right: 1px solid #eee;
    border-bottom: 1px solid #eee;
}
.faq_block h3 {
    font-size: 2.22rem !important;
    color: #2f564a !important; /* タイトルもグリーンに */
}
.faq_block h3:before {
    content: "Q." !important;
    color: #2f564a !important;
    font-size: 3.2rem !important;
    font-weight: 900 !important;
}
.answer_area:before {
    content: "Ans." !important; /* AをAnsに */
    color: #d5aa72 !important;
    font-size: 2.4rem !important;
    font-weight: 900 !important;
}

@media screen and (max-width: 768px) {
    .faq_block { padding: 30px 20px !important; }
    .contents_list { padding: 20px 10px !important; gap: 10px !important; }
    .contents_list li a { padding: 10px 15px !important; font-size: 1.3rem !important; }
}

/* --- サロン導入ページ用 プレミアムコンポーネント --- */
.intro_section_v2 {
    padding: 80px 0;
    line-height: 1.8;
}
.intro_section_v2 .section_title {
    text-align: center;
    margin-bottom: 50px;
}
.intro_section_v2 .section_title h2 {
    font-size: 3rem;
    color: #2f564a;
    font-weight: 800;
    margin-bottom: 20px;
    position: relative;
    display: inline-block;
}
.intro_section_v2 .section_title h2:after {
    content: "";
    display: block;
    width: 60px;
    height: 3px;
    background: #d5aa72;
    margin: 15px auto 0;
}

/* メリットカード */
.benefit_grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    margin-top: 40px;
}
.benefit_card {
    background: #fff;
    border: 1px solid #f0f0f0;
    border-radius: 20px;
    padding: 40px 30px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
    transition: all 0.3s ease;
    text-align: center;
}
.benefit_card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(47, 86, 74, 0.1);
    border-color: #2f564a;
}
.benefit_card .icon_circle {
    width: 70px;
    height: 70px;
    background: #f1f6f3;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 25px;
    color: #2f564a;
    font-size: 2.4rem;
}
.benefit_card h3 {
    font-size: 1.9rem;
    color: #2f564a;
    margin-bottom: 15px;
    font-weight: 800;
}
.benefit_card p {
    font-size: 1.5rem;
    color: #666;
    line-height: 1.7;
}

/* ステップフロー */
.step_flow_v2 {
    max-width: 900px;
    margin: 50px auto 0;
}
.step_item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 40px;
    position: relative;
}
.step_item:not(:last-child):after {
    content: "";
    position: absolute;
    left: 25px;
    top: 60px;
    bottom: -30px;
    width: 2px;
    border-left: 2px dashed #2f564a;
    opacity: 0.3;
}
.step_num {
    min-width: 50px;
    height: 50px;
    background: #2f564a;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    font-size: 1.8rem;
    margin-right: 25px;
    z-index: 2;
}
.step_content {
    background: #fff !important;
    padding: 25px 35px;
    border-radius: 15px;
    border: 1px solid #eee;
    width: 100%;
    text-align: left;
}
.step_content h4 {
    font-size: 1.8rem;
    color: #2f564a;
    margin-bottom: 10px;
    font-weight: 800;
}
.step_content p {
    font-size: 1.5rem;
    color: #555;
    margin: 0;
}

/* 大型CTAボタン */
.cta_area_v2 {
    text-align: center;
    background: #f1f6f3;
    padding: 80px 20px;
    border-radius: 30px;
    margin: 60px 0;
}
.btn_premium {
    display: inline-block;
    background: #2f564a;
    color: #fff !important;
    padding: 22px 60px;
    font-size: 2rem;
    font-weight: 900;
    border-radius: 100px;
    text-decoration: none !important;
    transition: all 0.4s ease;
    box-shadow: 0 10px 30px rgba(47, 86, 74, 0.3);
}
.btn_premium:hover {
    background: #1c2d24;
    transform: scale(1.05);
    box-shadow: 0 15px 40px rgba(47, 86, 74, 0.4);
}
.btn_premium i {
    margin-right: 15px;
}

@media screen and (max-width: 768px) {
    .intro_section_v2 .section_title h2 { font-size: 2.2rem; }
    .step_item { flex-direction: column; align-items: center; text-align: center; }
    .step_num { margin-right: 0; margin-bottom: 15px; }
    .step_item:not(:last-child):after { display: none; }
    .btn_premium { padding: 18px 40px; font-size: 1.6rem; width: 90%; }
    .step_content { padding: 20px; text-align: center; }
}
