.h1_left .headding_wrap,.h1_left .headding{font-size:3.5rem}.h1_left .subtitle_wrap{letter-spacing:0.15em;margin-top:.5rem}.h1_left .subtitle{font-size:inherit}.h1_left .editable_wrap{margin-top:2rem}
.iphone .h2_bgfix,.ipad .h2_bgfix{background-attachment:scroll;background-size:100% auto;background-repeat:no-repeat}@media only screen and (max-width: 480px){.iphone .h2_bgfix,.ipad .h2_bgfix{background-size:auto 100%}}.h2_bgfix .text-side{color:#fff;text-align:center}.h2_bgfix .section_h2{margin-bottom:.3rem}.h2_bgfix .image-frame-bg{height:1px;width:100px;margin:0 auto 1.5rem}.h2_bgfix .headding_wrap,.h2_bgfix .section_h2{font-size:2.8rem}.h2_bgfix .subtitle_wrap,.h2_bgfix .subtitle,.h2_bgfix .editable_wrap{font-size:1.2rem;letter-spacing:0px}.h2_bgfix .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:2.8rem}@media only screen and (min-width: 768px){.h2_bgfix{background-attachment:fixed}.h2_bgfix .headding_wrap,.h2_bgfix .section_h2{font-size:5rem}.h2_bgfix .subtitle_wrap,.h2_bgfix .subtitle,.h2_bgfix .editable_wrap{font-size:1.5rem}.h2_bgfix .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:5rem}}
.h2_left .subtitle{letter-spacing:0}.h2_left .headding_wrap{font-size:2rem}.h2_left .editable_wrap,.h2_left .subtitle_wrap{font-size:1.2rem}.h2_left .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:2rem}@media only screen and (min-width:768px){.h2_left .headding_wrap{font-size:3.5rem}.h2_left .editable_wrap,.h2_left .subtitle_wrap{font-size:1.5rem}.h2_left .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:3.5rem}}
body:not(.eat_cms) .block_link.u_none-hover{pointer-events:none}.square_four_images_with_text{color:#fff}.square_four_images_with_text .section_inner{max-width:1440px;margin:0 auto}.square_four_images_with_text .duplicatable-container{text-align:center;font-size:0}.square_four_images_with_text .duplicatable-content{margin-right:0.5%}.square_four_images_with_text .duplicatable-content:nth-child(n+2){margin-top:0}.square_four_images_with_text .duplicatable-content:last-child{margin-right:0}.square_four_images_with_text .duplicatable-content_inner{position:relative}.square_four_images_with_text .image-frame-bg{width:100%;padding-top:100%;position:relative}.square_four_images_with_text .image-frame-bg .frame-image{display:block;position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.square_four_images_with_text .duplicatable-content{width:24.5%;display:inline-block;vertical-align:top;font-size:1.6rem;text-align:left}.square_four_images_with_text .duplicatable-content:nth-child(2){margin-top:0}.square_four_images_with_text .duplicatable-content:nth-child(n+5){margin-top:1.4rem}.square_four_images_with_text .text-side{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:100%;padding:0 10px}.square_four_images_with_text .text-side_inner{text-align:center}.square_four_images_with_text .section_h3{font-size:2.4rem;color:#fff}.square_four_images_with_text .letter{color:#fff;font-size:1.6rem}@media only screen and (max-width: 1024px){.square_four_images_with_text .section_h3{font-size:1.8rem}.square_four_images_with_text .letter{font-size:1.2rem;letter-spacing:0}}@media only screen and (max-width: 767px){.square_four_images_with_text .section_inner{max-width:initial}.square_four_images_with_text .duplicatable-container{display:flex;flex-wrap:wrap;justify-content:center}.square_four_images_with_text .duplicatable-content{width:45%;padding:5px;margin-right:0;border:none !important}.square_four_images_with_text .duplicatable-content:nth-child(n+5){margin-top:0}.square_four_images_with_text .image-frame img{width:100%;height:100%}}@media only screen and (max-width: 480px){.square_four_images_with_text .section_h3{font-size:1.5rem}}
.half_fit_image .image-side{position:relative}.half_fit_image .image-side_inner{padding-top:66%}.half_fit_image .image-side .image-frame-bg{position:absolute!important;top:0;right:0;bottom:0;left:0;margin:auto}.half_fit_image .text-side_inner{width:100%;max-width:280px;margin:auto}.half_fit_image .headding_wrap,.half_fit_image .section_h3{font-size:2.3rem}.half_fit_image .subtitle{font-size:1.1rem}.half_fit_image .editable_wrap{font-size:1.5rem}.half_fit_image .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:2.3rem}.half_fit_image .spacer-item_wrap:nth-child(2) .editable_wrap{font-size:1.1rem}@media only screen and (min-width:768px){.half_fit_image{padding:5rem 0}.half_fit_image .section_inner{display:-ms-flexbox;display:flex}.half_fit_image .image-side,.half_fit_image .text-side{width:50%}.half_fit_image .image-side_inner{height:100%}.half_fit_image .text-side{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:0 1.5rem 0 5rem}.half_fit_image .text-side_inner{max-width:440px;margin-left:0}.half_fit_image .section_btn{margin-left:0}.half_fit_image.reverse .section_inner{-ms-flex-direction:row-reverse;flex-direction:row-reverse}.half_fit_image.reverse .text-side{padding:0 5rem 0 1.5rem}.half_fit_image.reverse .text-side_inner{margin-left:auto;margin-right:0}.half_fit_image .headding_wrap,.half_fit_image .section_h3{font-size:3rem}.half_fit_image .subtitle{font-size:1.2rem}.half_fit_image .editable_wrap{font-size:1.5rem}.half_fit_image .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:3rem}.half_fit_image .spacer-item_wrap:nth-child(2) .editable_wrap{font-size:1.2rem}}
.alternating-backcolor .section_inner{width:100%;max-width:1024px}.alternating-backcolor .duplicatable-content{counter-increment:section}.alternating-backcolor .duplicatable-content+.duplicatable-content{margin-top:2rem}.alternating-backcolor .duplicatable-content:nth-child(odd) .dc-inner_bg .frame-image{background-color:#e5f1f9}.alternating-backcolor .duplicatable-content_inner{position:relative;display:flex;align-items:flex-start}.alternating-backcolor .dc-inner_bg{height:100%;width:100%;position:absolute;top:0;left:0}.alternating-backcolor .dc-inner_bg .frame-image{background-color:#fff}.alternating-backcolor .image-side{position:relative;flex-shrink:0;width:300px;z-index:1}.alternating-backcolor .image-side .frame-image{padding-top:91%}.alternating-backcolor .text-side{position:relative;display:flex;flex-wrap:wrap;align-items:flex-start;width:100%;padding:30px;z-index:1}.alternating-backcolor .text-side .title_wrap{flex:1 0 0;align-self:center;line-height:25.2px}.alternating-backcolor .text-side .heading_wrap,.alternating-backcolor .text-side .heading{color:#0072c3;font-size:17px;font-weight:bold;line-height:30px}.alternating-backcolor .text-side .text_wrap{color:#333;width:100%;margin-top:14px;font-size:16px;line-height:28.8px}@media only screen and (max-width: 1024px){.alternating-backcolor .section_inner{padding:0 20px}}@media only screen and (max-width: 767px){.alternating-backcolor .duplicatable-content_inner{flex-direction:column}.alternating-backcolor .image-side{width:100%}.alternating-backcolor .text-side{padding:20px}.alternating-backcolor .text-side .text_wrap{font-size:14px;line-height:25.2px}}
.half_fit_image .image-side{position:relative}.half_fit_image .image-side_inner{padding-top:66%}.half_fit_image .image-side .image-frame-bg{position:absolute!important;top:0;right:0;bottom:0;left:0;margin:auto}.half_fit_image .text-side_inner{width:100%;max-width:280px;margin:auto}.half_fit_image .headding_wrap,.half_fit_image .section_h3{font-size:2.3rem}.half_fit_image .subtitle{font-size:1.1rem}.half_fit_image .editable_wrap{font-size:1.5rem}.half_fit_image .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:2.3rem}.half_fit_image .spacer-item_wrap:nth-child(2) .editable_wrap{font-size:1.1rem}@media only screen and (min-width:768px){.half_fit_image{padding:5rem 0}.half_fit_image .section_inner{display:-ms-flexbox;display:flex}.half_fit_image .image-side,.half_fit_image .text-side{width:50%}.half_fit_image .image-side_inner{height:100%}.half_fit_image .text-side{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:0 1.5rem 0 5rem}.half_fit_image .text-side_inner{max-width:440px;margin-left:0}.half_fit_image .section_btn{margin-left:0}.half_fit_image.reverse .section_inner{-ms-flex-direction:row-reverse;flex-direction:row-reverse}.half_fit_image.reverse .text-side{padding:0 5rem 0 1.5rem}.half_fit_image.reverse .text-side_inner{margin-left:auto;margin-right:0}.half_fit_image .headding_wrap,.half_fit_image .section_h3{font-size:3rem}.half_fit_image .subtitle{font-size:1.2rem}.half_fit_image .editable_wrap{font-size:1.5rem}.half_fit_image .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:3rem}.half_fit_image .spacer-item_wrap:nth-child(2) .editable_wrap{font-size:1.2rem}}
.alternating-backcolor .section_inner{width:100%;max-width:1024px}.alternating-backcolor .duplicatable-content{counter-increment:section}.alternating-backcolor .duplicatable-content+.duplicatable-content{margin-top:2rem}.alternating-backcolor .duplicatable-content:nth-child(odd) .dc-inner_bg .frame-image{background-color:#e5f1f9}.alternating-backcolor .duplicatable-content_inner{position:relative;display:flex;align-items:flex-start}.alternating-backcolor .dc-inner_bg{height:100%;width:100%;position:absolute;top:0;left:0}.alternating-backcolor .dc-inner_bg .frame-image{background-color:#fff}.alternating-backcolor .image-side{position:relative;flex-shrink:0;width:300px;z-index:1}.alternating-backcolor .image-side .frame-image{padding-top:91%}.alternating-backcolor .text-side{position:relative;display:flex;flex-wrap:wrap;align-items:flex-start;width:100%;padding:30px;z-index:1}.alternating-backcolor .text-side .title_wrap{flex:1 0 0;align-self:center;line-height:25.2px}.alternating-backcolor .text-side .heading_wrap,.alternating-backcolor .text-side .heading{color:#0072c3;font-size:17px;font-weight:bold;line-height:30px}.alternating-backcolor .text-side .text_wrap{color:#333;width:100%;margin-top:14px;font-size:16px;line-height:28.8px}@media only screen and (max-width: 1024px){.alternating-backcolor .section_inner{padding:0 20px}}@media only screen and (max-width: 767px){.alternating-backcolor .duplicatable-content_inner{flex-direction:column}.alternating-backcolor .image-side{width:100%}.alternating-backcolor .text-side{padding:20px}.alternating-backcolor .text-side .text_wrap{font-size:14px;line-height:25.2px}}
.half_fit_image .image-side{position:relative}.half_fit_image .image-side_inner{padding-top:66%}.half_fit_image .image-side .image-frame-bg{position:absolute!important;top:0;right:0;bottom:0;left:0;margin:auto}.half_fit_image .text-side_inner{width:100%;max-width:280px;margin:auto}.half_fit_image .headding_wrap,.half_fit_image .section_h3{font-size:2.3rem}.half_fit_image .subtitle{font-size:1.1rem}.half_fit_image .editable_wrap{font-size:1.5rem}.half_fit_image .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:2.3rem}.half_fit_image .spacer-item_wrap:nth-child(2) .editable_wrap{font-size:1.1rem}@media only screen and (min-width:768px){.half_fit_image{padding:5rem 0}.half_fit_image .section_inner{display:-ms-flexbox;display:flex}.half_fit_image .image-side,.half_fit_image .text-side{width:50%}.half_fit_image .image-side_inner{height:100%}.half_fit_image .text-side{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:0 1.5rem 0 5rem}.half_fit_image .text-side_inner{max-width:440px;margin-left:0}.half_fit_image .section_btn{margin-left:0}.half_fit_image.reverse .section_inner{-ms-flex-direction:row-reverse;flex-direction:row-reverse}.half_fit_image.reverse .text-side{padding:0 5rem 0 1.5rem}.half_fit_image.reverse .text-side_inner{margin-left:auto;margin-right:0}.half_fit_image .headding_wrap,.half_fit_image .section_h3{font-size:3rem}.half_fit_image .subtitle{font-size:1.2rem}.half_fit_image .editable_wrap{font-size:1.5rem}.half_fit_image .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:3rem}.half_fit_image .spacer-item_wrap:nth-child(2) .editable_wrap{font-size:1.2rem}}
.standard_content_four{text-align:center}.standard_content_four .section-container{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-wrap:wrap;flex-wrap:wrap}.standard_content_four .section-content{position:relative;font-size:1.3rem;width:49%;margin-bottom:1.5rem}.standard_content_four .section-content:nth-child(n+3){margin-bottom:0}.standard_content_four .section-content_inner{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100%}.standard_content_four .image-side{position:relative}.standard_content_four .image-side .image-frame-bg{width:100%;padding-top:57%}.standard_content_four .image-side .frame-image{position:absolute!important;top:0;right:0;bottom:0;left:0;margin:auto}.standard_content_four .text-side{position:relative}.standard_content_four .text-side_inner{width:90%;margin:auto}.standard_content_four .editable_wrap,.standard_content_four .headding_wrap,.standard_content_four .section_h3{font-size:1.9rem}.standard_content_four .spacer-item_wrap:nth-child(2) .editable_wrap{font-size:1.6rem}@media only screen and (min-width:768px){.standard_content_four .section-content{width:24%;font-size:1.4rem;margin-bottom:0}}@media only screen and (min-width:1025px){.standard_content_four .editable_wrap,.standard_content_four .headding_wrap,.standard_content_four .section_h3{font-size:2rem}.standard_content_four .spacer-item_wrap:nth-child(2) .editable_wrap{font-size:1.5rem}}
.h2_left .subtitle{letter-spacing:0}.h2_left .headding_wrap{font-size:2rem}.h2_left .editable_wrap,.h2_left .subtitle_wrap{font-size:1.2rem}.h2_left .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:2rem}@media only screen and (min-width:768px){.h2_left .headding_wrap{font-size:3.5rem}.h2_left .editable_wrap,.h2_left .subtitle_wrap{font-size:1.5rem}.h2_left .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:3.5rem}}
.half .image-side{position:relative}.half .image-side_inner{padding-top:66%}.half .image-side .image-frame-bg{position:absolute !important;top:0;right:0;bottom:0;left:0;margin:auto}.half .text-side{position:relative}.half .text-side_inner{width:100%;position:relative;z-index:2;max-width:280px;margin:auto}.half .headding_wrap,.half .section_h3{font-size:3rem}.half .subtitle{font-size:1.1rem}.half .editable_wrap{font-size:1.5rem}.half .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:3rem}.half .spacer-item_wrap:nth-child(2) .editable_wrap{font-size:1.1rem}@media only screen and (min-width: 768px){.half .duplicatable-content_inner{display:flex}.half .duplicatable-content:nth-child(even) .duplicatable-content_inner{flex-direction:row-reverse}.half .duplicatable-content:nth-child(even) .text-side{padding:0 5rem 0 1.5rem}.half .image-side,.half .text-side{width:50%}.half .image-side_inner{height:100%}.half .text-side{display:flex;align-items:center;flex-direction:column;padding:0 1.5rem 0 5rem}.half .text-side .spacer-content{width:100%}.half .text-side_inner{max-width:500px}.half .section_btn{margin-left:0}.half.reverse .duplicatable-content_inner{flex-direction:row-reverse}.half.reverse .duplicatable-content:nth-child(even) .duplicatable-content_inner{flex-direction:row}.half.reverse .duplicatable-content:nth-child(even) .text-side{padding:0 1.5rem 0 5rem}.half.reverse .text-side{padding:0 5rem 0 1.5rem}.half .section_h3,.half .headding_wrap{font-size:3.5rem}.half .subtitle{font-size:1.2rem}.half .editable_wrap{font-size:1.5rem}.half .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:3.5rem}.half .spacer-item_wrap:nth-child(2) .editable_wrap{font-size:1.2rem}}
.h2_left .subtitle{letter-spacing:0}.h2_left .headding_wrap{font-size:2rem}.h2_left .editable_wrap,.h2_left .subtitle_wrap{font-size:1.2rem}.h2_left .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:2rem}@media only screen and (min-width:768px){.h2_left .headding_wrap{font-size:3.5rem}.h2_left .editable_wrap,.h2_left .subtitle_wrap{font-size:1.5rem}.h2_left .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:3.5rem}}
.flow_cards .section_inner{max-width:1500px}.flow_cards .duplicatable-container{display:flex;flex-wrap:wrap;justify-content:center;row-gap:2rem}.flow_cards .duplicatable-content_outer{text-align:center;width:100%}.flow_cards .duplicatable-content{counter-increment:section;display:flex;width:18%;flex-direction:row;justify-content:space-between}.flow_cards .duplicatable-content:last-child .image-side{visibility:hidden}.flow_cards .duplicatable-content_inner{padding:40px 25px;position:relative;display:flex;align-items:flex-start}.flow_cards .dc-inner_bg{height:100%;width:100%;position:absolute;top:0;left:0}.flow_cards .dc-inner_bg .frame-image{background-color:#e7e7e7}.flow_cards .text-side{flex-wrap:wrap;align-items:flex-start;width:100%;position:relative;z-index:1}.flow_cards .number_wrap{display:flex;align-items:center;justify-content:center;align-self:center;height:2em;flex:0 0 2em;color:#404040;font-size:2rem;line-height:1;background-color:#fff;border-radius:50%;position:relative;font-size:2.2rem;width:40px;height:40px;border:none !important;margin:0 auto}.flow_cards .number_wrap:before{font-weight:400;transform:translate(2px, 0)}.flow_cards .title_wrap{flex:1 0 0;align-self:center;line-height:1.4}.flow_cards .headding_wrap,.flow_cards .headding{font-size:2.4rem;font-weight:bold;margin-top:2rem;margin-bottom:2rem}.flow_cards .subtitle{font-size:0.85em}.flow_cards .text_wrap{width:100%;margin-top:1.5rem;text-align:initial;font-size:13px}.flow_cards .letter{letter-spacing:0.25px}.flow_cards .image-side{margin:2.5rem 0 0 0;position:relative;z-index:1;align-self:center;max-width:40px;width:0;margin:0 2px 0 16px;transform:rotate(270deg)}.flow_cards .image-side.reverse .duplicatable-content_inner{flex-direction:row-reverse}.flow_cards .image-side.reverse .text-side{margin:0 0 0 3rem}.flow_cards .image-side.reverse .image-side{margin:0}.flow_cards .image-side .frame-image{border-bottom:10px solid transparent;border-left:8px solid transparent;border-right:8px solid transparent;border-top:10px solid black;width:0;height:0;margin:0 auto}@media only screen and (max-width: 1024px){.flow_cards .section_inner{max-width:1300px;width:90%;margin:0 auto;padding:0}.flow_cards .duplicatable-container{row-gap:0}.flow_cards .duplicatable-content{width:100%;display:initial}.flow_cards .duplicatable-content_inner{padding:16px 25px 30px}.flow_cards .duplicatable-content_outer{text-align:initial}.flow_cards .text-side-inner{display:flex;margin-top:0}.flow_cards .number_wrap{flex:initial}.flow_cards .headding_wrap{margin-bottom:2rem}.flow_cards .headding{margin:0 20px}.flow_cards .text_wrap{font-size:12px;margin-top:0}.flow_cards .image-side{margin:0 auto;margin-top:6px;margin-bottom:0;transform:rotate(0deg)}.flow_cards .image-side .frame-image{border-bottom:4px solid transparent}}@media screen and (max-width: 560px){.flow_cards .duplicatable-content{width:100%;display:initial}.flow_cards .duplicatable-content_outer{text-align:initial}.flow_cards .duplicatable-content_inner{padding:30px}.flow_cards .text-side-inner{display:flex}.flow_cards .headding_wrap{margin:0}.flow_cards .text_wrap{display:none}.flow_cards .image-side{margin:0 auto;margin-top:1px;display:initial}.flow_cards .image-side .frame-image{border-bottom:0px solid transparent}.flow_cards .triangle{margin:4px}}
.h2_left .subtitle{letter-spacing:0}.h2_left .headding_wrap{font-size:2rem}.h2_left .editable_wrap,.h2_left .subtitle_wrap{font-size:1.2rem}.h2_left .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:2rem}@media only screen and (min-width:768px){.h2_left .headding_wrap{font-size:3.5rem}.h2_left .editable_wrap,.h2_left .subtitle_wrap{font-size:1.5rem}.h2_left .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:3.5rem}}
.card_one{text-align:center}.card_one .section-content_inner{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.card_one .image-side{width:100%}.card_one .image-side .image-frame-bg{padding-top:66%;position:relative}.card_one .image-side .frame-image{position:absolute!important;top:0;right:0;bottom:0;left:0;margin:auto;width:100%;height:100%}.card_one .text-side{position:relative;padding:0 1.5rem 4.4rem}.card_one .text-side_bg{position:absolute;height:100%;width:100%;top:0;left:0}.card_one .text-side_inner{position:relative;max-width:280px;margin:auto;z-index:2}.card_one .section_btn{position:relative}.card_one .headding_wrap,.card_one .section_h3{font-size:2.3rem}.card_one .subtitle{font-size:1.1rem;letter-spacing:1px}.card_one .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:2.3rem}.card_one .spacer-item_wrap:nth-child(2) .editable_wrap{font-size:1.1rem}@media only screen and (min-width:768px){.card_one .text-side_inner{max-width:850px}.card_one .image-side .image-frame-bg{padding-top:50%}.card_one .headding_wrap,.card_one .section_h3{font-size:3rem}.card_one .subtitle{font-size:1.2rem}.card_one .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:3rem}.card_one .spacer-item_wrap:nth-child(2) .editable_wrap{font-size:1.2rem}}
.h2_left .subtitle{letter-spacing:0}.h2_left .headding_wrap{font-size:2rem}.h2_left .editable_wrap,.h2_left .subtitle_wrap{font-size:1.2rem}.h2_left .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:2rem}@media only screen and (min-width:768px){.h2_left .headding_wrap{font-size:3.5rem}.h2_left .editable_wrap,.h2_left .subtitle_wrap{font-size:1.5rem}.h2_left .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:3.5rem}}
.portfolio_standerd .portfolio_list{position:relative;z-index:1}.portfolio_standerd li{border-bottom:1px solid #ccc;margin-bottom:3rem;padding-bottom:2rem}.portfolio_standerd li .image-wrap{margin-bottom:1rem}.portfolio_standerd li .image-wrap .portfolio_image{padding-top:66%;background-image:url("//s1.crcn.jp/images/noimage.jpg");background-position:center;background-repeat:no-repeat;background-size:cover;overflow:hidden;position:relative}.portfolio_standerd li .image-wrap .portfolio_image img{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:130%;height:auto}.portfolio_standerd li .image-wrap a{display:block}.portfolio_standerd li .portfolio_text .text_wrap{text-align:left;margin-bottom:0;padding:0}.portfolio_standerd li .portfolio_text .text_wrap h4{font-size:1.7rem;font-weight:200;margin-bottom:1rem;line-height:1.5}.portfolio_standerd li .portfolio_text .text_wrap p{color:#bababa}.portfolio_standerd li .portfolio_text .text_wrap .date{font-size:1.2rem;margin-bottom:.5rem}.portfolio_standerd li .category{font-size:1.4rem;position:relative}.portfolio_standerd li .category .category-color{position:absolute;width:15px;height:5px;left:0;background-color:#ff5721;top:50%;margin-top:-2.5px}.portfolio_standerd .section_btn{width:90%;max-width:300px}.portfolio_standerd .dummy_blog_text{background-color:rgba(255,255,255,0.9);color:#333;transition:opactiy .2s ease}.portfolio_standerd .dummy_blog_text:hover{background-color:rgba(255,255,255,0.5)}@media only screen and (min-width: 768px){.portfolio_standerd{text-align:left}.portfolio_standerd .portfolio_articles,.portfolio_standerd .dummy_form_area{text-align:center;font-size:0}.portfolio_standerd .article{display:flex;flex-flow:row wrap;justify-content:center}.portfolio_standerd li{vertical-align:top;width:31.333%;margin-left:3%}.portfolio_standerd li:nth-child(3n+1){margin-left:0}}
.btn .section_btn a{background-color:#2C5DFF}
body:not(.eat_cms) .block_link.u_none-hover{pointer-events:none}body:not(.eat_cms) .information_card .info-side_tel-text{pointer-events:none}.information_card .information_card-content{display:flex;justify-content:space-between}.information_card .text-side{width:40%}.information_card .text-side .headding_wrap,.information_card .text-side .section_h2{font-size:6.4rem;font-weight:bold}.information_card .text-side .subtitle_wrap,.information_card .text-side .subtitle{font-size:1.8rem}.information_card .text-side .letter_wrap{margin-top:30px;font-size:1.6rem}.information_card .text-side .letter{font-size:1.6rem}.information_card .info-side{width:50%;display:flex;flex-direction:column;gap:20px}.information_card .info-side_content-inner{position:relative;padding:50px 20px;display:flex;justify-content:center;align-items:center;width:100%;border:1px solid #333}.information_card .info-side-bg{position:absolute;width:100%;height:100%}.information_card .info-side .info-side_mail-text,.information_card .info-side .info-side_tel-text{position:relative;text-align:center;z-index:2}.information_card .info-side .headding_wrap,.information_card .info-side .section_h3{font-size:2rem}.information_card .info-side .cta-text_wrap,.information_card .info-side .cta-text{font-size:3.3rem;font-weight:bold;margin-top:20px}.information_card .info-side .microcopy_wrap,.information_card .info-side .microcopy{font-size:1.4rem}.information_card .editable{min-width:100px}@media only screen and (max-width: 1024px){.information_card .information_card-content{flex-direction:column;align-items:center}.information_card .text-side{text-align:center;width:100%}.information_card .text-side .headding_wrap,.information_card .text-side .section_h2{font-size:4rem}.information_card .info-side{margin-top:20px;width:100%}.information_card .info-side .headding_wrap,.information_card .info-side .section_h3{font-size:1.8rem}.information_card .info-side .cta-text_wrap,.information_card .info-side .cta-text{font-size:2.2rem}}
body:not(.eat_cms) .block_link.u_none-hover{pointer-events:none}.card_icon .card_icon-wrapper{display:flex;flex-direction:column;align-items:center;gap:20px;margin:0 8px}.card_icon .duplicatable-content{width:95%;max-width:400px}.card_icon .card_icon-item{position:relative;display:flex;gap:8px;padding:20px 10px;border:1px solid #000;border-radius:10px;overflow:hidden;box-shadow:1px 1px 3px 2px rgba(0,0,0,0.1)}.card_icon .card_icon-bg{position:absolute;height:100%;width:100%;top:0;left:0}.card_icon .image-side{position:relative;display:flex;justify-content:center;align-items:center;width:50px;height:50px;flex-shrink:0}.card_icon .image-frame{height:100%}.card_icon .image-frame div{height:100%}.card_icon .image-frame div img{object-fit:cover;height:100%}.card_icon .text-side{position:relative;width:100%}.card_icon .headding_wrap,.card_icon .section_h3{font-size:1.6rem;font-weight:bold}.card_icon .letter_wrap,.card_icon .letter{font-size:1.4rem}@media only screen and (min-width: 768px){.card_icon .card_icon-wrapper{flex-direction:row;justify-content:center;flex-wrap:wrap}.card_icon .duplicatable-content{width:calc((100% - 25px) / 2)}.card_icon .card_icon-item{gap:16px;padding:30px 16px}.card_icon .image-side{width:60px;height:60px}}@media only screen and (min-width: 1025px){.card_icon .duplicatable-content{width:calc((100% - 40px) / 3)}}
#footer-section{z-index:3}@media only screen and (max-width: 768px){.jobs #footer-section .detail-side{display:none}}.footer-block .footer_tp_generic .detail-side{bottom:0;transition:bottom .5s}.footer_tp_generic{background-color:#fff;font-size:1.4rem}.footer_tp_generic .editable a{color:#666}.footer_tp_generic .footer-company{position:relative}.footer_tp_generic .footer-company::before{content:"";position:absolute;top:0;left:50%;width:100%;height:1px;background-color:#ccc;transform:translateX(-50%)}.footer_tp_generic .logo-side{padding:2rem 0;text-align:center}.footer_tp_generic .logo{max-width:200px;margin:0 auto 2rem}.footer_tp_generic .logo img{width:auto;max-width:100%}.footer_tp_generic .logo div{display:inline}.footer_tp_generic .menu-side{display:none}.footer_tp_generic .detail-side{text-align:center;font-size:1.4rem;display:-ms-flexbox;display:flex;-ms-flex-direction:row-reverse;flex-direction:row-reverse;background-color:#fff;position:fixed;bottom:-100%;left:0;width:100%;transition:bottom .8s .2s}.footer_tp_generic .detail-side_first{width:80px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;position:relative}.footer_tp_generic .detail-side_first .tel{line-height:1.4;letter-spacing:0}.footer_tp_generic .detail-side_first .tel a{position:absolute;width:100%;height:100%;top:0;left:0}.footer_tp_generic .detail-side_first .tel:after{content:"phone";font-family:"Material Icons";font-size:3.6rem;font-weight:400;font-style:normal;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;-webkit-font-feature-settings:"liga";font-feature-settings:"liga"}.footer_tp_generic .detail-side_first .hour{font-size:1.2rem;display:none}.footer_tp_generic .detail-side_second{-ms-flex-positive:1;flex-grow:1}.footer_tp_generic .linker a{background-color:#E4A847}.footer_tp_generic .letter{letter-spacing:.1em}.footer_tp_generic .copy{border-top:1px solid #ccc;font-size:1.2rem;padding:2rem 0;text-align:center}.footer_tp_generic .sns-side{margin-bottom:2rem}.footer_tp_generic .sns-side .duplicatable-container{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.footer_tp_generic .sns-side .duplicatable-content{max-width:70px;padding:0 1rem}.footer_tp_generic .section_btn a{white-space:nowrap}.footer_tp_generic .back-top{cursor:pointer;width:40px;height:40px;border-radius:20px;border:1px solid #E4A847;position:absolute;bottom:10px;right:10px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.footer_tp_generic .back-top .arrow:before{content:"▲";color:#E4A847}@media only screen and (min-width: 768px){.footer_tp_generic .footer-company{padding:3.5rem 0 2rem}.footer_tp_generic .footer-company_inner{display:flex;flex-wrap:wrap}.footer_tp_generic .logo{display:block;margin:0 auto}.footer_tp_generic .menu-block{order:3;width:100%}.footer_tp_generic .menu-side{display:block;padding:3rem 0 5rem}.footer_tp_generic .menu-side .duplicatable-container{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;text-align:center;-ms-flex-pack:end;justify-content:center}.footer_tp_generic .menu-side .duplicatable-content{width:auto;padding:0 1rem;font-size:1.4rem}.footer_tp_generic .logo-side{order:1;width:200px}.footer_tp_generic .detail-side{order:2;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between;text-align:left;margin:auto 0 auto auto;width:calc(100% - 220px);position:static;background-color:transparent}.footer_tp_generic .detail-side_first{margin-bottom:4rem;font-size:1.8rem;text-align:right;display:block}.footer_tp_generic .detail-side_first .tel{font-size:2.2rem}.footer_tp_generic .detail-side_first .tel:after{content:none}.footer_tp_generic .detail-side_first .tel a{position:relative;pointer-events:none}.footer_tp_generic .detail-side_first .hour{display:block}.footer_tp_generic .detail-side_second{max-width:300px;margin-bottom:3rem}.footer_tp_generic .detail-side>div{margin-bottom:0;width:100%}.footer_tp_generic .copy{padding:1.5rem 0;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}.footer_tp_generic .sns-side{margin-bottom:0}.footer_tp_generic .sns-side .duplicatable-content{width:60px}.footer_tp_generic .section_btn{margin:auto 0 auto auto}.footer_tp_generic .back-top{bottom:80px}}@media only screen and (max-width: 768px){.footer_tp_generic .detail-side_first .tel{font-size:0 !important}.footer_tp_generic .detail-side_second .section_btn{max-width:none}.footer_tp_generic .detail-side_second .section_btn a{border-radius:0}}@media only screen and (min-width: 768px){_:-ms-lang(x)::-ms-backdrop,.footer_tp_generic .detail-side{align-items:center;margin:unset}_:-ms-lang(x)::-ms-backdrop,.footer_tp_generic .detail-side_second{margin-left:2rem}}@media only screen and (max-width: 768px){_::-webkit-full-page-media,_:future,:root .detail-side_first{text-align:center}_::-webkit-full-page-media,_:future,:root .tel.letter.editable{display:grid}}
@charset "UTF-8";#section-wrapper{background-color:#fff}#section-wrapper .headding{    font-family: YakuHanMP, 'Noto Serif', 'Hiragino Mincho ProN', eatYuM, 'Sawarabi Mincho', Meiryo, serif;
    line-height: ;
    letter-spacing: em;
}#section-wrapper .subtitle{    font-family: YakuHanMP, 'Noto Serif', 'Hiragino Mincho ProN', eatYuM, 'Sawarabi Mincho', Meiryo, serif;
    line-height: ;
    letter-spacing: em;
}#section-wrapper .letter{    font-family: YakuHanMP, 'Noto Serif', 'Hiragino Mincho ProN', eatYuM, 'Sawarabi Mincho', Meiryo, serif;
    line-height: ;
    letter-spacing: em;
}@media only screen and (min-width:769px){}#loading{position:fixed;top:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:9999;display:none}#loading .loading_inner{width:100%;height:90px;position:absolute;top:50%}#loading .loading_inner .loader_animation,#loading .loading_inner .loader_animation:before,#loading .loading_inner .loader_animation:after{border-radius:50%;width:2.4rem;height:2.4rem;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation:load7 1.3s infinite ease-in-out;animation:load7 1.3s infinite ease-in-out}#loading .loading_inner .loader_animation{color:#fff;font-size:12px;margin:10px auto;position:relative;top:-30px;text-indent:-9999rem;-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-animation-delay:-0.16s;animation-delay:-0.16s}#loading .loading_inner .loader_animation:before,#loading .loading_inner .loader_animation:after{content:'';position:absolute;top:0}#loading .loading_inner .loader_animation:before{left:-3.4rem;-webkit-animation-delay:-0.32s;animation-delay:-0.32s}#loading .loading_inner .loader_animation:after{left:3.4rem}@-webkit-keyframes load7{0%,80%,100%{box-shadow:0 2.45rem 0 -1.25rem}40%{box-shadow:0 2.45rem 0 0}}@keyframes load7{0%,80%,100%{box-shadow:0 2.45rem 0 -1.25rem}40%{box-shadow:0 2.45rem 0 0}}#loading .circle{position:fixed;top:50%;left:50%;width:50px;height:50px;margin:-25px 0 0 -25px;border-radius:50%;border:8px solid #f00;border-right-color:transparent;-webkit-animation:spin .8s linear infinite;animation:spin .8s linear infinite}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg);opacity:.2}50%{-webkit-transform:rotate(180deg);transform:rotate(180deg);opacity:1.0}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg);opacity:.2}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg);opacity:.2}50%{-webkit-transform:rotate(180deg);transform:rotate(180deg);opacity:1.0}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg);opacity:.2}}

body *,
#section-wrapper .letter {
  font-family: "Outfit", "Zen Kaku Gothic", sans-serif;
  font-weight: 600;
}
#section-wrapper a {
  font-family: "Outfit", "Zen Kaku Gothic", sans-serif !important;
  font-weight: 600;
}

@media only screen and (min-width: 1025px) {
  section:first-of-type .content {
    padding: 0;
  }
}


/* =============================================== */
/***** FV *****/
/* =============================================== */
.mainvisual_mountain::before {
  content: "";
  display: block;
  height: 100%;
  width: 100%;
  background-color: rgba(81, 72, 157, 0.4);
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
}
.mainvisual_mountain .catch.text-side {
  /* ▼ テキストシャドウ（水平方向のズレ, 垂直方向のズレ, ぼかし半径, 色） */
  text-shadow: 0.3rem 0.3rem 0px #51489D;
}

@media only screen and (min-width: 768px) {
  .mainvisual_mountain .catch {
    width: 90%;
    padding: 0 1.5rem;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 1;
    font-family: "Outfit";
  }
}
@media only screen and (max-width: 768px) {
  .mainvisual_mountain .catch {
    width: 90%;
    padding: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 1;
    font-family: "Outfit";
    text-align: center;
  }
  .mainvisual_mountain .catch_text {
   /* font-size: 2.5rem; */
    font-weight: 300;
  }
  .mainvisual_mountain .catch_subtext {
    font-size: 1.5rem;
    font-weight: lighter;
        text-align: left;
  }
}


/* =============================================== */
/***** ヘッダー *****/
/* =============================================== */
#global-nav .gnav_accordion_wide .gnav_pc .logo_side {
  height: 100%;
  flex: 0 0 auto;
  margin-left: 2rem;
  padding: 1rem 0 !important;
}
header.logo_side .header_logo span {
  font-size: 2rem !important;
  font-weight: bold;
}
#global-nav .gnav_items li a {
  font-size: 1em;
  font-weight: 600; /* ページ名を太字に */

  position: relative; /* ::after疑似要素の基準点にする */
  text-decoration: none; /* 元の下線を消す */
  padding-bottom: 8px; /* 下線を引くスペースを確保 */
}

/* 1. リンク全体の基本設定 */
#global-nav .gnav_accordion_wide .gnav_pc .gnav_items li a {
  position: relative; /* ●を配置する基準 */
  text-decoration: none !important; /* 重要：既存の下線を強制的に消す */
  border-bottom: none !important; /* 念のためborderも消す */
}
/* 2. 「滞在中のページ(active)」に対しても下線を強制削除 */
#global-nav .gnav_accordion_wide .gnav_pc .gnav_items li.active,
#global-nav .gnav_accordion_wide .gnav_pc .gnav_items li.active a {
  text-decoration: none !important; /* アンダーライン削除 */
  /* border: 2px solid #51489D !important; */
}
/* 3. 「●」を作る設定（初期状態は隠す） */
#global-nav .gnav_accordion_wide .gnav_pc .gnav_items li a::after {
  content: "●";
  position: absolute;
  bottom: 8px; /* 下端に配置 */
  left: 50%; /* 左から50%の位置 */

  /* 中央配置とサイズ0（非表示）の設定 */
  transform: translateX(-50%) scale(0);

  color: #A4C29E !important; /* ●の色（白） */
  font-size: 8px; /* ●のサイズ */
  line-height: 1;
  transition: transform 0.3s ease; /* アニメーション */
}
/* 4. 「滞在ページ(.active)」と「ホバー時」に●を表示 */
#global-nav .gnav_accordion_wide .gnav_pc .gnav_items li.active a::after,
#global-nav .gnav_accordion_wide .gnav_pc .gnav_items li a:hover::after {
  transform: translateX(-50%) scale(1); /* 中央位置でサイズを1に戻す */
  text-decoration: none !important; /* ここでも念のため下線を禁止 */
}

/* ヘッダーお問い合わせボタン */
#global-nav
  .gnav_accordion_wide
  .gnav_pc
  .gnav_items
  li:not(.gnav-submenu):last-child {
  background: #51489D !important;
}
#global-nav
  .gnav_accordion_wide
  .gnav_pc
  .gnav_items
  li:not(.gnav-submenu):last-child
  a {
  color: #fff !important; /* 文字色を白に */
}
#global-nav
  .gnav_accordion_wide
  .gnav_pc
  .gnav_items
  li:not(.gnav-submenu):last-child
  a:hover {
  opacity: 1 !important;
}

/* SP用ナビゲーション */
#global-nav .gnav_accordion_wide .gnav_sp .logo_side {
  height: 60px;
    padding: 1rem 0;
    margin-left: 1rem;
}
#global-nav .gnav_sp .gnav_items {
  text-align: center;
}
#global-nav .gnav_accordion_wide .hamburger_top,
#global-nav .gnav_accordion_wide .hamburger_mid,
#global-nav .gnav_accordion_wide .hamburger_btm {
  background-color: #51489D;
}
@media (max-width: 768px) {
  #global-nav .gnav_sp .gnav_items li:last-child a {
   /* margin-top: 0.8em; */
   /* background: #51489D !important; */
   /* color: #ffffff !important; */
  }
}


/* =============================================== */
/***** フッター *****/
/* =============================================== */
.footer_tp_generic .footer-company::before {
  height: 0 !important;
}
@media only screen and (min-width: 1025px) {
  .width-limit .section_inner {
    padding: 0;
    max-width: 1080px;
    margin: 0 auto;
  }
}
@media only screen and (min-width: 768px) {
  .footer_tp_generic .copy {
    padding: 1.5rem 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    justify-content: center;
  }
}

/*** SP：電話アイコン ***/
.footer_tp_generic .detail-side_first .tel:after {
  color: #51489D !important;
}


/* =============================================== */
/***** TOPに戻るボタン *****/
/* =============================================== */
@media only screen and (min-width: 768px) {
  .footer_tp_generic .back-top {
    right: 4em;
    bottom: 80px;
  }
}
/* ボタン本体 (通常時) */
.footer_tp_generic .back-top {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  border-radius: 5rem; /* 正円にする */
  background-color: #51489D; /* 背景色を黄に */
  border: 2px solid #51489D; /* 枠線を黄に */
  cursor: pointer;
  transition:
    background-color 0.3s,
    color 0.3s; /* 変化を滑らかに */
}
.footer_tp_generic .back-top .arrow::before {
  font-size: 1.6rem;
  content: "TOP";
  color: #fff;
}
::before,
::after {
  text-decoration: inherit;
  vertical-align: inherit;
}


/* =============================================== */
/***** ページ遷移（ページ最下部） *****/
/* =============================================== */
.card_icon .card_icon-item {
  position: relative;
  display: flex;
  gap: 8px;
  padding: 20px 10px;
  border: 2px solid #D8EDD2;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 1px 1px 3px 2px rgba(0, 0, 0, 0.1);
}


/* =============================================== */
/***** ボタン *****/
/* =============================================== */
#content-wrapper #section-wrapper .linker::after {
  position: absolute;
  opacity: 1 !important;
  z-index: 10;
}
#content-wrapper #section-wrapper .linker .btn-hide {
  z-index: 1 !important;
}

/* ボタン全体の基本設定 */
.section_btn {
  padding: 0;
  width: 100%;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.15em;
}
.section_btn .linker a {
  position: relative;
  display: block;
  min-width: 200px;
  width: 100%;
  max-height: fit-content;
  min-height: fit-content;
  box-sizing: border-box;
  padding: 1em 2em;
  text-decoration: none;
  overflow: hidden; /* アニメーションのはみ出し防止 */
  z-index: 1;

  /* ▼ デフォルトの色設定 */
  background: #51489D !important; 
  color: #F5F4FB !important; /* 背景が黒なので文字は白に */
  border: 2px solid #51489D !important;
  border-radius: 5rem;

  transition: color 0.3s ease;
}
/* ホバー時のアニメーション背景 (中央から上下に広がる) */
.section_btn .linker a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;

  /* ▼ ホバー時の色 */
  background: #F5F4FB;

  /* ▼ アニメーションのキモ: 最初は縦方向につぶしておく */
  transform: scaleY(0); 
  /* ▼ 中央から広がる設定 */
  transform-origin: center; 
  
  transition: transform 0.3s ease;
  z-index: -1; /* 文字の後ろに配置 */
}
/* 矢印を削除（上書きで消す） */
.section_btn .linker a::after {
  content: none;
  display: none;
}
/* ホバー時のアクション */
.section_btn .linker a:hover::before {
  /* ▼ 縦方向に100%まで広げる */
  transform: scaleY(1);
}
.section_btn .linker a:hover {
  opacity: 1 !important;
  color: #51489D !important;
}

/*** 2. お問い合わせページ（送信ボタン） ***/
/* 親要素 (.section_btn) の設定 */
.form-item.send_btn .section_btn {
  position: relative;
  display: block;
  width: 100%;
  max-width: 300px;
  margin: 0 auto;
  border-radius: 5rem; 

  /* ▼ デフォルトの色設定 (#1d1d1d) */
  background: #51489D;
  border: 2px solid #51489D !important;
  
  box-sizing: border-box;
  overflow: hidden;
  z-index: 1;
}
/* inputタグ (テキスト部分) の設定 */
@media only screen and (min-width: 768px) {
  .form-item.send_btn .section_btn input[type="submit"] {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0.5em 0;
    background: transparent !important;

    /* ▼ テキストの色 (白) */
    color: #F5F4FB !important;
    
    font-weight: bold;
    letter-spacing: 0.15em;
    cursor: pointer;
    z-index: 3;
    transition: color 0.3s ease;
    border-radius: 5rem;
  }
}
@media only screen and (max-width: 768px) {
  .form-item.send_btn .section_btn input[type="submit"] {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 1em 0;
    background: #51489D !important;

    /* ▼ テキストの色 (白) */
    color: #F5F4FB !important;
    
    font-weight: bold;
    letter-spacing: 0.15em;
    cursor: pointer;
    z-index: 3;
    transition: color 0.3s ease;
    border-radius: 5rem;
  }
}
/* ホバー時のアニメーション背景 (中央から上下に広がる) */
.form-item.send_btn .section_btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  
  /* ▼ ホバー時の色 */
  background: #F5F4FB;

  /* ▼ アニメーション設定: 中央から縦に広がる */
  transform: scaleY(0);
  transform-origin: center;

  transition: transform 0.3s ease;
  z-index: 1; /* inputの下、背景の上 */
}
/* 送信ボタンの矢印も削除 */
.form-item.send_btn .section_btn::after {
  content: none;
  display: none;
}
/* ホバー時の動作 */
.form-item.send_btn .section_btn:hover::before {
  transform: scaleY(1);
}
/* ホバー時のテキストカラー変更 */
.form-item.send_btn .section_btn:hover input[type="submit"] {
  /* 背景が白系（#F5F4FB）に広がるため、文字色を背景色だった紫系（#51489D）に変更 */
  color: #51489D !important; 
}

/*** 2. フッター（お問い合わせ） ***/
/* ボタン全体の基本設定 */
.footer_tp_generic .section_btn {
  padding: 0;
  width: 100%;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.15em;
}
.footer_tp_generic .section_btn .linker a {
  position: relative;
  display: block;
  min-width: 200px;
  width: 100%;
  max-height: fit-content;
  min-height: fit-content;
  box-sizing: border-box;
  padding: 1em 2em;
  text-decoration: none;
  overflow: hidden; /* アニメーションのはみ出し防止 */
  z-index: 1;

  /* ▼ デフォルトの色設定 (#51489D) */
  background: #51489D !important; 
  color: #F5F4FB !important; /* 背景が黒なので文字は白に */
  border: 2px solid #51489D !important;
  border-radius: 5rem;

  transition: color 0.3s ease;
}
/* ホバー時のアニメーション背景 (中央から上下に広がる) */
.footer_tp_generic .section_btn .linker a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;

  /* ▼ ホバー時の色 */
  background: #F5F4FB;
  color: #51489D !important;

  /* ▼ アニメーションのキモ: 最初は縦方向につぶしておく */
  transform: scaleY(0); 
  /* ▼ 中央から広がる設定 */
  transform-origin: center; 
  
  transition: transform 0.3s ease;
  z-index: -1; /* 文字の後ろに配置 */
}
/* 矢印を削除（上書きで消す） */
.footer_tp_generic .section_btn .linker a::after {
  content: none;
  display: none;
}
/* ホバー時のアクション */
.footer_tp_generic .section_btn .linker a:hover::before {
  /* ▼ 縦方向に100%まで広げる */
  transform: scaleY(1);
}
.footer_tp_generic .section_btn .linker a:hover {
  opacity: 1 !important;
  color: #51489D !important;
}


/* =============================================== */
/***** 画像・フォント *****/
/* =============================================== */
.h2_left {
  background-image: none !important;
}

.half_fit_image .image-side .frame-image {
  border-radius: 0 2rem 2rem 0;
}
.half_limited_height .image-side .frame-image,
.block_circle .image-side .frame-image {
  border-radius: 2rem;
}
@media only screen and (min-width: 768px) {
  .section_h3 {
    font-size: 3rem !important;
  }
  .information_card .section_h3,
  .card_icon .section_h3 {
    font-size: 2rem !important;
  }
  .h1_left .section_h3 {
        font-size: clamp(5rem, 5vw, 7rem) !important;
  }
}
@media only screen and (max-width: 768px) {
  .h2_left .section_h2 {
    font-size: 3rem !important;
    font-weight: 600 !important;
    text-align: center !important;
  }
}


/* =============================================== */
/***** HOME *****/
/* =============================================== */
/*** SP ***/
@media only screen and (max-width: 768px) {
  .half_limited_height .text-side_inner,
  .half .text-side_inner {
    width: 100%;
    position: relative;
    z-index: 2;
    max-width: 320px;
    margin: auto;
  }
}

/*** キャッチ ***/
.h2_line .image-frame-bg {
  background-color: #51489D !important;
}

/*** 事業内容 ***/
.h2_bgfix .text-side .image-frame-bg {
  background-color: #51489D !important;
}

.square_four_images_with_text .frame-image {
  border: 4px solid #51489D;
  box-sizing: border-box;    /* 枠線を追加してもレイアウトが崩れないようにする */
  border-radius: 2rem;
}
.square_four_images_with_text .frame-image::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(81, 72, 157, 0.4);
  z-index: 1;
    border-radius: 15px;
}
.square_four_images_with_text .text-side {
  /* position: relative; */
  z-index: 2; /* ベール(z-index: 1)よりも大きい数値を指定して前面に出す */
}
#content-wrapper #section-wrapper [data-extention_class="block_link"] .link-setting {
  width: 35px;
  height: 35px;
  position: absolute;
  bottom: 0;
  right: 0;
  color: #fff;
  background: #3e9bc4;
  z-index: 2;
}

/*** 働き方・社風 ***/
.standard_content_text_dup .text-box {
    border: none;
}

/*** 採用情報 ***/
.new_catchcopy_simple {
  background-attachment: fixed !important;
}

.table_light .table_wrap .tr .th {
  background-color: rgba(215, 237, 210, 0.3);
}

/*** お問い合わせ ***/
.information_card.image-bg {
  background-attachment: fixed !important;
  background-size: cover !important;
  background-position: center !important;
  position: relative;
}
.information_card.image-bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.7); /* 白色のベール。0.7の部分で透明度を調整できます */
  z-index: 1; /* ベールの階層 */
  pointer-events: none; /* ベールがボタンなどのクリック操作を邪魔しないようにする */
}
.information_card.image-bg .section_inner,
.information_card.image-bg .spacer-section {
  position: relative;
  z-index: 2; /* ベール(1)よりも高い数値を指定して前面に出す */
}
.information_card .info-side_content-inner {
  position: relative;
  padding: 50px 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  border: 3px solid #51489D;
}


/* =============================================== */
/***** シーアイエルについて *****/
/* =============================================== */
/*** 代表メッセージ ***/
.title_backcolor .image-side .image-frame img {
  border-radius: 2rem;
}
.title_backcolor .text-side .headding_wrap, .title_backcolor .text-side .subtitle_wrap {
  display: inline-block;
  padding: 4px 20px;
  background: #51489D;
}

/*** シーアイエルの強み ***/
.vertical_icon_dup {
  background-color: transparent !important;
}
@media only screen and (min-width: 768px) {
  .vertical_icon_dup .duplicatable-content {
    width: 23%;
    margin: 0 4px;
  }
}
.vertical_icon_dup .frame-image {
  border: 4px solid #51489D;
  box-sizing: border-box;    /* 枠線を追加してもレイアウトが崩れないようにする */
  border-radius: 2rem;
}
.vertical_icon_dup .frame-image::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(81, 72, 157, 0.4);
border-radius: 20px;
  z-index: 1;
}
.vertical_icon_dup .text-side {
  /* position: relative; */
  z-index: 2; /* ベール(z-index: 1)よりも大きい数値を指定して前面に出す */
}

/*** 数字で見るシーアイエル ***/
@media only screen and (min-width: 768px) {
  .three_cards_title_sfiht .duplicatable-content {
    width: 33.33333%;
    padding: 0rem 1rem 8rem 1rem;
  }
  .three_cards_title_sfiht .text-side {
    text-align: left;
    padding: 2rem;
    margin-top: -5.7rem;
    position: relative;
    z-index: 1;
    background-color: #fff;
  }
}
@media only screen and (max-width: 1024px) {
  .three_cards_title_sfiht .duplicatable-content {
    padding: 3rem 0;
  }
}

.vertical_icon_dup .duplicatable-content_inner {
  padding-top: 100%;
  position: relative;
}

/*** 採用情報を見る ***/
.banner_image .frame-image {
  position: relative;
  box-sizing: border-box;
  overflow: hidden;

  border: 4px solid #51489D;
  border-radius: 2rem;
}
.banner_image .frame-image::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(176, 171, 221, 0.4); /* 0.5の部分で透明度を指定 */
  pointer-events: none; /* ベールがクリックなどの操作を邪魔しないようにする */
}


/* =============================================== */
/***** 事業内容 *****/
/* =============================================== */
@media screen and (max-width: 560px) {
  .flow_cards .text_wrap {
    display: unset;
    font-size: 1.5rem;
  }
}
@media only screen and (min-width: 1025px) {
  .width-limit .section_inner {
    padding: 0;
    max-width: 990px;
    margin: 0 auto;
  }
  .flow_cards .duplicatable-content {
    counter-increment: section;
    display: flex;
    width: 30%;
    flex-direction: row;
    justify-content: space-between;
  }
}

/*** 点検の流れ ***/
.flow_cards .number_wrap {
  background-color: #51489D;
}


/* =============================================== */
/***** 働き方・社風 *****/
/* =============================================== */
.title_simple_wide_reversible .text-box {
    border: none;
}

/*** 入社後の流れ ***/
.time_table {
  background: none;
}
.time_table .time_text:after {
  position: absolute;
  z-index: 2;
  left: -37px;
  display: block;
  width: 16px;
  height: 16px;
  border: 2px solid #51489D;
  border-radius: 16px;
  background: #fff;
  content: "";
}
.time_table .time_text:before,
.time_table .duplicatable-container:after {
  background: #51489D;
}

/*** キャリアパス ***/
.new_list_box .text-side .number_wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  height: 2em;
  flex: 0 0 2em;
  color: #fff;
  font-size: 2rem;
  line-height: 1;
  background-color: #51489D;
  border-radius: 50%;
  position: relative;
}

/*** 年収モデル ***/
.faq_accordion .duplicatable-content {
  background-color: #F5F4FB;
}


/* =============================================== */
/***** 採用情報 *****/
/* =============================================== */



/* =============================================== */
/***** 会社案内 *****/
/* =============================================== */



/* =============================================== */
/***** ブログ・施工事例 *****/
/* =============================================== */
.blog_posts .posts_title,
.showcase_chart .showcase_chart_title {
  font-size: 2.6rem !important;
  font-weight: 600 !important;
}
.blog_posts_sidebar,
.showcase_chart_sidebar {
  font-size: 110%;
}
.blog_posts .banner_text,
.showcase_chart .banner_text,
.blog_posts .banner_text ._color_,
.showcase_chart .banner_text ._color_ {
  color: #333 !important;
}
.blog_posts .banner_text .banner_link,
.showcase_chart .banner_text .banner_link {
  font-size: 1.6rem;
  font-weight: 600 !important;
  background: #51489D !important;
  border-radius: 5rem;
  color: #fff !important;
  border: 2px solid #51489D !important;
  padding: 1em 1.5em !important;
}
.showcase_chart .banner_inner,
.blog_posts .banner_inner {
  padding: 2rem;
  text-align: center;
  background-color: #D7EDD2 !important;
}
.blog_posts .banner_text:nth-child(3),
.showcase_chart .banner_text:nth-child(3) {
  font-weight: 600;
}
/* ブログ */
.breadcrumb_item {
  display: flex;
  place-items: center;
}
.blog_posts_index .blog_posts_sidebar {
  flex: 1 0 320px !important;
  margin: 0 0 0 84px;
}

/* アニメーション */
.blog_posts .banner_text .banner_link,
.showcase_chart .banner_text .banner_link {
  /* 既存の設定 */
  font-size: 1.6rem;
  font-weight: 600 !important;
  border-radius: 5rem;
  padding: 1em 1.5em !important;
  
  /* アニメーション用の追加設定 */
  position: relative;
  display: inline-block; /* リンクをボタン化するため */
  overflow: hidden;      /* アニメーションのはみ出し防止 */
  z-index: 1;
  text-decoration: none;

  /* デフォルトの色設定 */
  background: #51489D !important; 
  color: #fff !important;
  transition: color 0.3s ease;
  
  /* ※親要素と同じ背景色のため、ボタンだと分かるようにボーダーを付ける場合は下のコメントアウトを外してください */
  /* border: 2px solid #51489D !important; */
}
/* ホバー時のアニメーション背景 (中央から上下に広がる) */
.blog_posts .banner_text .banner_link::before,
.showcase_chart .banner_text .banner_link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;

  /* ホバー時の色 */
  background: #F5F4FB;

  /* 最初は縦方向につぶしておく */
  transform: scaleY(0); 
  transform-origin: center; 
  transition: transform 0.3s ease;
  z-index: -1; /* 文字の後ろに配置 */
}
/* ホバー時のアクション */
.blog_posts .banner_text .banner_link:hover::before,
.showcase_chart .banner_text .banner_link:hover::before {
  /* 縦方向に100%まで広げる */
  transform: scaleY(1);
}
.blog_posts .banner_text .banner_link:hover,
.showcase_chart .banner_text .banner_link:hover {
  color: #51489D !important;
}

/* =============================================== */
/***** サイトマップ *****/
/* =============================================== */
@media only screen and (min-width: 1025px) {
  .width-limit .section_inner {
    padding: 0;
    max-width: 1200px;
    margin: 0 auto;
  }
  .multiple_btn .duplicatable-content:nth-child(n+1) {
    margin-top: 3rem;
    padding: 0 4px;
  }
}
@media only screen and (min-width: 768px) {
  .multiple_btn .duplicatable-content {
    width: 20%;
  }
}
.multiple_btn .section_inner .section_btn .linker a {
  font-size: 1.5rem;
}


/* =============================================== */
/***** e-thanks *****/
/* =============================================== */
.thanks_page {
  background-color: #eee;
}
.catch.text-side {
  margin: 0;
}
.thanks_page .catch {
  padding: 5%;
  background-color: #fff;
  border: 2px solid #51489D !important;
}
.thanks_page .headding_wrap,
.thanks_page .subtitle_wrap {
  display: flex;
  justify-content: center;
}

.thanks_page .catch_text {
  padding: 2rem 0;
  font-size: 5vw;
  font-weight: bold;
  color: #333;
  text-align: center !important;
  letter-spacing: 0.1em;
}

.thanks_page .subtitle_wrap .catch_subtext {
  color: #51489D;
  font-weight: bold;
  text-align: center !important;
  letter-spacing: 0.1em;
}


/* =============================================== */
/***** フォントサイズ *****/
/* =============================================== */
@media only screen and (max-width: 768px) {
  .sub_title .headding_wrap .section_h3, .sub_title .editable_wrap {
    font-size: 2.5rem;
  }
}

h1.catch_text.editable.headding {
width: fit-content;
padding: 0 21px 5px;
text-shadow: #a39aef7d 0.3rem 0.3rem 0px;
line-height: 1.3;
background-color: #ffffff;/*指定の色*/
    text-align: left;
}

/* 20260317 修正 */
#section-wrapper :is(.h2_line,.h2_left,.h2_bgfix) .section_h2 {
    position: relative;
    width: fit-content;
}
#section-wrapper :is(.h2_line,.h2_bgfix) .section_h2 {
    margin: 0 auto;
}
#section-wrapper :is(.h2_line,.h2_left,.h2_bgfix) .section_h2::after {
    position: absolute;
    content: " ";
    display: block;
    width: 100%;
    height: 3px;
    bottom: -3px;
    left: 0;
    background: linear-gradient(90deg, #7568ea 50px, #d0cbee 50px);
}

#section-wrapper .blog_unity .blog-side .category {
    background:#51489d;
}

@media only screen and (max-width: 768px){
.mainvisual_mountain {/*imgが入ってる場所のclassを指定*/
background: url("https://d1i7na1hjknxjq.cloudfront.net/uploads/storage/image/file/508681/optimized_Wq7EU93nrfeM5ZHNLgPxDA.png")no-repeat center / contain !important;
height: 177.7vw;/*高さ調整*/
}
}

/* 20260318 修正 */
.mainvisual_mountain .catch_text {
    font-size: clamp(3.4rem,6.5vw,5rem);
}
.mainvisual_mountain .catch_subtext {
    font-size: clamp(1.6rem,4vw,2.5rem);
}
@media only screen and (max-width: 1150px){
#content-wrapper #global-nav .gnav_accordion_wide .gnav_pc .gnav_items li {
    padding: 0 1.6rem;
}
}
@media only screen and (min-width: 480px){
.mainvisual_mountain .catch_text br {
    display: none;
}
}