@charset "UTF-8";
:root{

 --i_bg_color: #fff; 
 --i_txt_color: #111; 
 --i_main_color: #ffb400; 
 --i_sub_color: #ff8300; 
 --i_sub2_color: #fff5dd; 
 --i_btn_color: #ffb400; 
 --i_btn_hover_color: #ffbf26; 
 --i_btn_txt_color: #fff; 
 --i_btn_hover_txt_color: #fff; 
 --i_shadow_color: rgba(0,0,0,0.05); 
 --i_border_color: rgba(0, 0, 0, 0.13); 
 --i_noimg_bg_color: #ffeab6; 
}

html{
 font-size: 62.5%;
}
body{
 font-size: 1.75rem;
 line-height: 1.9;
 letter-spacing: 0.02rem;
 -webkit-text-size-adjust: 100%;
 color: var(--i_txt_color);
 font-weight: 500;
}
body,main{
 background: var(--i_bg_color);
}

@media screen and (max-width: 850px){
 html{
 font-size: 60.606%;
 }
 body{
 letter-spacing: 0px;
 }
}
a{
 outline: 0;
 text-decoration: none;
 color: var(--i_txt_color);
}
section[style*=" color:"]:not([style*=" color: inherit"]) a,
div[style*=" color:"]:not([style*=" color: inherit"]) a{
 color: inherit;
}

.composite_box01 .inner_item_img img{
 object-position: 50% 50%;
 font-family: 'object-position: 50% 50%;';
}

@media screen and (max-width: 850px){
 #sidebar{
 border: 5px solid var(--i_noimg_bg_color) !important;
 }
}
.no_img{
 background: var(--i_noimg_bg_color, rgba(200,200,200,0.3));
}

#load div:nth-of-type(1){
 background: var(--i_bg_color);
}
#load .loader,
.popup .loader{
 border: 1px solid var(--i_main_color);
}
#load .loader,
#load .loader::before,
.popup .loader,
.popup .loader::before{
 border-top-color: var(--i_main_color);
}
#load .loader::before,
#load .loader::after,
.popup .loader::before,
.popup .loader::after{
 left: -1px;
 top: -1px;
}

#load img{
 max-width: 240px;
}
@media screen and (max-width: 650px){
 #load img{
 max-width: 200px;
 }
}

header{
 font-size: 1.4rem;
 color: #fff;

}
body.scrolled header{
 padding-top: 0;
}
header .wraper{
 max-width: 1300px;
}
body.scrolled header{
 background: #fff;
 box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.03);
}
header h1{
 line-height: 1.5;
 font-size: 1.2rem;
 font-weight: normal;
 opacity: 0.7;
 top: 13px !important;
}
body.scrolled header .header_contents header h1{
 color: #333333;
}
body.scrolled header .logo{
 padding: 10px 0 !important;
}
header .logo,
header .logo a{
 max-width: 160px;
}
header#pattern2.width_full .logo{
 background: #fff !important;
 padding: 10px 20px;
 left: 0;
}
body.scrolled header#pattern2.width_full .logo{
 background: none;
 padding-right: 0;
 left: 25px;
 min-height: 100px !important;

}

@media all and (-ms-high-contrast: none) {
 *::-ms-backdrop, header .logo{

 min-height:139px;
 }
 *::-ms-backdrop, body.scrolled header .logo a img{

 top: 0 !important;
 }
 *::-ms-backdrop, header#pattern2 .logo{

 padding-top: 35px;
 }
 *::-ms-backdrop, body.scrolled header#pattern2 .logo{

 top: 20px;
 }
 *::-ms-backdrop, header#pattern2 nav ul.nav_1st{

 min-height: 45px !important;
 }
}
body.scrolled header .logo a img{
 max-height: 100px;
}
header .header_contents .header_col1{

 flex-direction: row;
 align-items: center;
 justify-content: flex-end;

}
header .header_contents .header_col1 .tel{
 position: relative;
 font-size: 23px;
 line-height: 1;
 padding-left: 26px;
 font-weight: bold;
}
header .header_contents .header_col1 .tel svg,
header .header_contents .header_col1 .btn .translate a svg,
header .header_contents .header_sns li svg{
 fill:#fff !important;
}
body.scrolled header .header_contents .header_col1 .tel svg,
body.scrolled header .header_contents .header_col1 .btn .translate a svg,
body.scrolled header .header_contents .header_sns li svg{
 fill:var(--i_txt_color) !important;
}
header .sp_menu a div span,
header .sp_menu a div:before,
header .sp_menu a div:after{
 background: #fff;
}
body.scrolled header .sp_menu a div span,
body.scrolled header .sp_menu a div:before,
body.scrolled header .sp_menu a div:after{
 background: var(--i_txt_color);
}
body.scrolled header.open .sp_menu a div span,
body.scrolled header.open .sp_menu a div:before,
body.scrolled header.open .sp_menu a div:after{
 background: var(--i_txt_color);
}
header.open .sp_menu a div span,
header.open .sp_menu a div:before,
header.open .sp_menu a div:after{
 background: var(--i_txt_color);
}
body.scrolled header .burger li.sp_translate a svg{
 fill: #222;
}
header .burger li.sp_translate a svg{
 fill: #fff;
}
header.open .burger li.sp_translate a svg{
 fill: var(--i_txt_color) !important;
}
body.scrolled header.open .burger li.sp_translate a svg{
 fill: var(--i_txt_color);
}
header .header_contents .header_col1 .tel svg{
 width: 22px;
 height: 22px;
 top: calc(50% - 11px);
 left: 0;
 fill:#fff !important;
}
body.scrolled header .header_contents .header_col1 .tel svg{
 fill:#fff;
}
header .header_contents .header_col1 .btn>a{
 display: inline-block;
 text-align: center;
 width: auto;
 background: var(--i_btn_color);
 color: #fff;
 border: 1px solid var(--i_btn_color);
 padding: 8px 15px 7px;
 transition: 0.4s ease-in-out;
 letter-spacing: 0.2rem;
 font-weight: 600;
 font-size: 1.4rem;
}
body.scrolled header .header_contents .header_col1 .btn>a{
 color: #fff;
 border: 1px solid var(--i_btn_color);
 font-weight: 600;
}
header .header_contents .header_col1 .btn>a:hover{
 opacity: 1 !important;;
 background: transparent;
 border: 1px solid #fff !important;
 color: #fff;
}
body.scrolled header .header_contents .header_col1 .btn>a:hover{
 opacity: 1 !important;
 background: transparent;
 border: 1px solid #fdb399 !important;
 color: var(--i_btn_color);
}
header .header_contents .header_col1 .btn .translate a svg{
 max-width: 74%;
 max-height: 74%;
 margin: 13% auto 0;
}
header .header_contents .header_col1 .tel a, 
header .header_contents .header_col1 .tel span{
 color: #fff;
}
body.scrolled header .header_contents .header_col1 .tel a,
body.scrolled header .header_contents .header_col1 .tel span{
 color: var(--i_txt_color);
}
header .header_contents .header_col1 .btn .translate a:hover{
 opacity: 0.8;
}
header#pattern1 nav,
header#pattern3 nav{
}
header nav *{
 color: var(--i_txt_color);
}
header#pattern2.width_full nav {
 padding-right: 0 !important;
}
body.scrolled header#pattern2 nav ul.nav_1st{
 border-bottom: none;
}
header nav ul.nav_1st{
 width: 80% !important;
 max-width: 1450px !important;
 padding-right: 25px;
}
body.scrolled header nav ul.nav_1st{
 border-bottom: 0;
}
header#pattern2:not(.width_full) nav {
 max-width: 1300px;
}
header nav ul.nav_1st>li{
 box-sizing: border-box;
 position: relative;
 padding:0 0.5rem
}
header nav ul.nav_1st>li span{
 position: relative;
}
body.scrolled header nav ul.nav_1st>li span:after{
 display: none;
}
header nav ul.nav_1st>li:last-child:before{
 content: "";
 width: 1px;
 height: 50%;
 position: absolute;
 top: 25%;
 right: 0;
}
header nav ul.nav_1st>li>a{
 font-size: 1.4rem;
 font-weight: bold;
 position: relative;
 padding-left: 1vw;
 padding-right: 1vw;
 overflow: visible;
}
body.scrolled header nav ul.nav_1st>li>a:before{
 display: none;
}
header nav ul.nav_1st>li>a span{

 line-height: 3.5;
 letter-spacing: 0.4rem;
 font-weight: 600;
 transition: 0.4s ease-in-out;
 color: #fff;
 font-size: 1.55rem;
}
header nav ul.nav_1st>li>a:hover span{
}
header#pattern2 nav ul.nav_1st>li>a span{
 line-height: 3.5;
}
body.scrolled header#pattern2 nav ul.nav_1st>li>a span{
 line-height: 3;
 color: var(--i_txt_color);;
}
body.margin header nav ul.nav_1st>li>a span{
 line-height: 4;
}

header nav ul.nav_2nd{
 padding-top: 20px;
}
header nav ul.nav_1st>li:hover ul.nav_2nd{
 padding-top: 10px;
}
header nav ul.nav_2nd>li{
 background: rgba(255, 255, 255, 0.95);
 border-bottom: 1px solid rgba(0, 0, 0, 0.13);
 box-shadow: 2px 2px 5px var(--i_shadow_color);
}
header nav ul.nav_2nd>li:nth-last-of-type(1){
 border-bottom: none;
}
header nav ul.nav_2nd li a{
 padding: 10px 20px;
 font-weight: 600;
 font-size: 1.4rem;
}
header nav ul.nav_2nd>li>a{
 padding-right: 30px;
}
header nav ul.nav_2nd>li>a:after{
 height: 5px;
 width: 5px;
 transform: rotate(-45deg);
 border-right: 1px solid var(--i_sub_color);
 border-bottom: 1px solid var(--i_sub_color);
 top: calc(50% - 2.5px);
 right: 20px;
}
header nav ul.nav_3rd{
 padding-left: 20px;
}
header nav ul.nav_3nd li a{
 padding: 5px 20px;
}
header nav ul.nav_3rd>li>a:after{
 height: 1px;
 width: 4px;
 background: var(--i_main_color);
 top: calc(50% - 0.5px);
 left: 5px;
}
@media screen and (max-width: 900px){
 body.scrolled header .burger li.sp_translate a svg {
 fill: var(--i_txt_color) !important;
 }
 header nav{
 width: 95%;
 }
 header .header_contents .header_col1 .btn a{
 width: 200px;
 }
 header .header_contents .header_col1 .tel svg,
 header .header_contents .header_col1 .btn .translate a svg,
 header .header_contents .header_sns li svg {
 fill: var(--i_btn_color) !important;
 } 
 header .header_contents .header_col1 .tel a, header .header_contents .header_col1 .tel span {
 color: var(--i_txt_color) !important;
 } 
 header .logo a img{
 max-height: 85px !important;
 }
 body.scrolled header .header_contents .header_col1 .tel svg {
 fill: var(--i_main_color) !important;
}
 header#pattern2.width_full h1{
 color: var(--i_txt_color);
 }
body.scrolled header#pattern2 nav ul.nav_1st>li>a span{
 line-height: 3;
 color: var(--i_txt_color);
} 
 header .burger{
 padding-right: 25px;
 }
 header.width_full .wraper {
 padding: 0 15px 0 0;
 width: 100%;
 }
 header#pattern2.width_full .logo{
 padding: 10px !important;
 }
 header .header_contents .header_col1 .tel svg{
 fill:var(--i_main_color) !important;
 }
 .header_contents .header_col1 .tel a,
 .header_contents .header_col1 .tel span {
 color: var(--i_txt_color);
 }
 header .header_contents .header_col1 .btn>a{
 border: 1px solid var(--i_btn_color);
 }
 header nav ul.nav_1st>li>a span{
 color: var(--i_txt_color);

 }
 header,
 header *,
 header nav ul.nav_2nd li a{
 }
 body.scrolled header .logo{
 padding: 10px 0 !important;
 }
 header.open:after,
 header .header_contents{
 background: rgba(255, 255, 255,0.9);
 overflow-x: hidden;
 }
 header .burger li.sp_translate a svg{
 height: 28px;
 width: 28px;
 margin: 10% auto;
 fill:#fff !important;
 }
 header .header_sns{
 border-bottom: none;
 }
 header .header_sns:empty,

 header .header_contents .header_col1:empty,
 header .header_contents .header_col2:empty{

 border: none;

 }
 header .header_contents .header_col1 .tel,
 header .header_contents .header_col1 .btn{
 float: none;
 }
 header .header_contents .header_col2{
 display: block !important;
 }
 header nav{
 border-bottom: 1px solid var(--i_border_color);
 }
 header nav ul.nav_1st{

 width: 105% !important;
 }
 header nav ul.nav_1st li{
 border-bottom: 1px solid var(--i_border_color);
 }
 header nav ul.nav_1st>li:before,
 header nav ul.nav_1st>li:after{
 display: none !important;
 }
 header nav ul.nav_1st>li i:before,
 header nav ul.nav_1st>li i:after{
 background: var(--i_main_color);
 }
 header nav ul.nav_2nd{
 border-top: 1px solid var(--i_border_color);
 }
 header nav ul.nav_2nd>li{
 box-shadow: none;
 }
 header nav ul.nav_2nd>li *{
 color: var(--i_txt_color);
 }
 header nav ul.nav_3rd{
 border-top: 1px solid var(--i_border_color);
 }
 header nav ul.nav_3rd>li:nth-last-of-type(1){
 border-bottom: none;
 }
 header#pattern4 .logo{
 margin: 0 !important;
 }
 header#pattern4 .burger{
 right: 0;
 position: absolute;
 margin: 0 10px;
 }
 header .logo a img{
 max-width: 180px;
 transition: 0.8s ease-in-out;
 }
 body.scrolled header .logo a img{
 max-width: 50px;
 } 
}

main>section:first-child:not([class*="pt"]),
main>div:first-child:not([class*="pt"]),
div[class*='pb']+.contents_related,
section[class*='pb']+.contents_related,
div[class*='pb']+.contents_related_tags,

section[class*='pb']+.contents_related_tags{

 padding-top: 60px;
}
main>section:not([class*="pt"]),
main>div:not([class*="pt"]),
aside>section:not([class*="pt"]),
aside>div:not([class*="pt"]){
 padding-bottom: 60px;
}
@media screen and (max-width: 800px){
 main>section:first-child:not([class*="pt"]),
 main>div:first-child:not([class*="pt"]),
 div[class*='pb']+.contents_related,
 section[class*='pb']+.contents_related,
 div[class*='pb']+.contents_related_tags,
 section[class*='pb']+.contents_related_tags{
 padding-top: 40px;
 }
 main>section:not([class*="pt"]),
 main>div:not([class*="pt"]),
 aside>section:not([class*="pt"]),
 aside>div:not([class*="pt"]){
 padding-bottom: 40px;
 }

}

section .content_wrapper>.heading:first-child:last-child{
 margin-bottom: 0;
}

section .content_wrapper>.heading:first-child:last-child{
 margin-bottom: 0;
}

section:not([class*="pt"]) .content_wrapper>.heading:first-child:last-child{
 margin-bottom: 0;
}

.heading.block_header_1,
.heading.block_header_6{
 margin-bottom: 30px;
 display: flex;
 flex-direction: column-reverse;
 align-items: center;
 justify-content: center;
}
.heading.block_header_1 p,
.heading.block_header_6 .h{
 font-weight: 600;
 letter-spacing: 0.2rem;
 font-size: 3.6rem !important;
 line-height: 1.4;
 position: relative;
 padding-bottom: 12px;
 margin-bottom: 10px;
 color: var(--i_txt_color);
}
.heading.block_header_1 p:before,
.heading.block_header_6 .h:before{
 position: absolute;
 display: block;
 content: "";
 background: var(--i_main_color);
 width: 50px;
 bottom: 0px;
 height: 3px;
 left: calc(50% - 25px);
 border-radius: 10px;
 pointer-events: none;
}
.heading.block_header_1.align-left p:before,
.heading.block_header_1.align-left .h:before,
.heading.block_header_1.align-left p:after,
.heading.block_header_1.align-left .h:after{
 left: 0;
}
.heading.block_header_1.align-right p:before,
.heading.block_header_1.align-right .h:before,
.heading.block_header_1.align-right p:after,
.heading.block_header_1.align-right .h:after{
 right: 0;
 left: auto;
}
.index .heading.block_header_1 p,
.index .heading.block_header_6 .h{
 font-size: 4.0rem;
}
section[style*="color: #ffffff;"] .heading.block_header_1 p:before,
section[style*="color: #ffffff;"] .heading.block_header_6 .h:before,

div[style*="color: #ffffff;"] .heading.block_header_1 p:before,
div[style*="color: #ffffff;"] .heading.block_header_6 .h:before,
section[style*="color: rgb(255, 255, 255);"] .heading.block_header_1 p:before,
section[style*="color: rgb(255, 255, 255);"] .heading.block_header_6 .h:before,
div[style*="color: rgb(255, 255, 255);"] .heading.block_header_1 p:before,
div[style*="color: rgb(255, 255, 255);"] .heading.block_header_6 .h:before{
 background: #fff;
}
section[style*="color: #ffffff;"] .heading.block_header_1 p:after,
section[style*="color: #ffffff;"] .heading.block_header_6 .h:after,
div[style*="color: #ffffff;"] .heading.block_header_1 p:after,
div[style*="color: #ffffff;"] .heading.block_header_6 .h:after,
section[style*="color: rgb(255, 255, 255);"] .heading.block_header_1 p:after,
section[style*="color: rgb(255, 255, 255);"] .heading.block_header_6 .h:after,
div[style*="color: rgb(255, 255, 255);"] .heading.block_header_1 p:after,
div[style*="color: rgb(255, 255, 255);"] .heading.block_header_6 .h:after{
 background: #fff;
}
section[style*="color: rgb(255, 255, 255);"] .heading.block_header_1 p,
section[style*="color: rgb(255, 255, 255);"] .heading.block_header_6 .h,
div[style*="color: rgb(255, 255, 255);"] .heading.block_header_1 p,
div[style*="color: rgb(255, 255, 255);"] .heading.block_header_6 .h{
 color: #fff !important;
}
.heading.block_header_1 .h,
.heading.block_header_6 p{
 font-size: 1.8rem;
 font-weight: 600;
 letter-spacing: 0.2rem;
}
@media screen and (max-width: 800px){
 .heading.block_header_1,
 .heading.block_header_6{
 margin-bottom: 20px;
 padding-bottom: 12px;
 }
 .heading.block_header_1 p,
 .heading.block_header_6 .h{
 font-size: 2.5rem !important;
 }
 .heading.block_header_1 .h,
 .heading.block_header_6 p{
 font-size: 1.5rem;
 }
 .index .heading.block_header_1 p,
 .index .heading.block_header_6 .h{
 font-size: 3.0rem !important;
 }
}

.heading.block_header_2{
 margin-bottom: 30px;
}
section[style*="color: rgb(255, 255, 255);"] .heading.block_header_2,
div[style*="color: rgb(255, 255, 255);"] .heading.block_header_2{
 border-bottom-color: #fff;
}
.heading.block_header_2 .h{
 display: inline-block;
 font-weight: 600;
 letter-spacing: 0.1rem;
 font-size: 2.3rem;
 line-height: 1.5;
 position: relative;
 padding-left: 22px;
 color: var(--i_txt_color);
}
.heading.block_header_2 .h:before{
 display: block;
 content:'';
 width: 6px;
 height: 6px;
 position: absolute;
 top: calc(50% - 5px);
 left: 0;
 border: 3px solid var(--i_sub_color);
 border-radius: 50px;
}
.heading.block_header_2 p{
 font-size: 1.6rem;
 font-weight: 500;
 letter-spacing: 0.1rem;
 padding-left: 22px;
 color: var(--i_txt_color);
}
.news_archive .heading.block_header_2,
.glossary_archive .heading.block_header_2,
.widget_gallery01 .heading.block_header_2,
.gallery_archive .heading.block_header_2{
 border: none;
}
.widget_gallery01.add_design4 .inner_item .heading.block_header_2{
 padding-left: 2em!important;
}
@media screen and (max-width: 800px){
 .heading.block_header_2{
 margin-bottom: 20px;
 }

 .heading.block_header_2 .h{
 font-size: 2.1rem;
 padding-left: 20px;
 }
 .heading.block_header_2 p{
 padding-left: 20px;
 }
 .heading.block_header_2 .h::before{
 }
}

.glossary_archive .content_wrapper .heading.block_header_2 .h{
 padding-left: 0 !important;
 border-bottom: 0 !important;
 padding-bottom: 0 !important;
 margin-bottom: 0 !important;;
}
.glossary_archive .content_wrapper .heading.block_header_2 .h a{
 color: var(--i_main_color);
}
.glossary_archive .content_wrapper .heading.block_header_2 .h:before,
.glossary_archive .content_wrapper .heading.block_header_2 .h:after,
.glossary_archive .content_wrapper .heading.block_header_2:before,
.glossary_archive .content_wrapper .heading.block_header_2:after{
 display: none !important;
}

.heading.block_header_3{
 overflow: hidden;
 background: var(--i_sub2_color);
 padding: 10px 10px 10px 10px;
 margin-bottom: 30px;
}
.heading.block_header_3 .h{
 font-weight: 600;
 letter-spacing: 0.2rem;
 font-size: 1.9rem;
 line-height: 1.5;
 color: var(--i_main_color);
}
.heading.block_header_3 p{
 font-size: 1.4rem;
 font-weight: 500;
 letter-spacing: 0.2rem;
 color: var(--i_main_color);
}
@media screen and (max-width: 800px){
 .heading.block_header_3{
 padding: 5px 5px 5px 5px;
 margin-bottom: 20px;
 }
 .heading.block_header_3 .h{
 font-size: 2.0rem;
 }
 .heading.block_header_3 p{
 font-size: 1.3rem;
 }
}

.heading.block_header_4{
 margin-bottom: 15px;
}
.heading.block_header_4:before{
 display: none;
}
.heading.block_header_4 .h{
 font-size: 2.4rem !important;
 font-weight: 600;
 letter-spacing: 0.2rem;
 line-height: 1.5;
 margin-bottom: 5px;
 color: var(--i_btn_color);
}
.heading.block_header_4 p{
 font-size: 1.7rem;
 font-weight: 600;
 letter-spacing: 0.2rem;
}

.heading.block_header_5{
 margin-bottom: 15px;
}
.heading.block_header_5 .h{
 display: inline;
 font-weight: 500;
 font-size: 1.8rem;
 margin-bottom: 10px;
 letter-spacing: 0.2rem;
}
.heading.block_header_5 p{
 font-weight: 500;
 letter-spacing: 0.1rem;
 display: inline;
 font-size: 1.4rem;
}
.heading.block_header_5 p:before{
 content: "/";
}
#sidebar .heading.block_header_5{
 background: var(--i_sub2_color);
 padding: 5px 15px;
 color: var(--i_main_color);
}

.parallax{
 box-shadow: 0 0 5px var(--i_shadow_color) inset;
}

.contents_btn01{
 overflow: inherit !important;
}
.contents_btn01 a,
.glossary_archive .content_wrapper .heading.block_header_2 a,
main form .submit{
 overflow: hidden!important;
}
.contents_btn01 a,
.glossary_archive .content_wrapper .heading.block_header_2 a:after{
 text-align: center;
 background: var(--i_btn_color);
 color: #fff !important;
 position: relative;
 display: inline-block;
 padding-left: 10px;
 padding-right: 10px;
 transition: .4s ease-in-out;
 font-family: inherit;
 font-weight: 600;
 letter-spacing: 0.2rem;
}
main form .submit span input{
 text-align: center;
 background: var(--i_btn_color);
 color: #fff !important;
 position: relative;
 display: inline-block;
 padding-left: 10px;
 padding-right: 10px;
 transition: .4s ease-in-out;
 font-family: inherit;
 font-weight: 600;
 letter-spacing: 0.2rem;
 font-size: 1.6rem;
}
main form .submit{
 position: relative;
}
.contents_btn01 a:before,
main form .submit:before{
 content:"";
 position: absolute;
 top: -25px;
 left: -40px;
 height:90px;
 width:20px;
 background : #fff;
 opacity: 0.1;

 transform: rotate(40deg);
 transition: 0.3s;

 z-index: 10;
 pointer-events: none;
}
.contents_btn01 a:hover:before,
main form .submit:hover:before{
 left:110%;
}
.contents_btn01 a:hover,
.glossary_archive .content_wrapper .heading.block_header_2 a:hover:after,
main form .submit span input:hover{
 background: var(--i_btn_hover_color);
}
.contents_btn01 a[target=_blank] span:before,
.contents_btn01 a[target=_blank] span:after{
 border: 1px solid #fff;
}
.contents_btn01 a span{
 text-align: center;
 line-height: 1.5;
 font-size: 1.6rem;
 padding: 10px 10px 13px;
}
input[type="button"],input[type="text"],input[type="submit"],input[type="image"],textarea{
 -webkit-appearance: none;
 border-radius: 0;
}
.contents_faq01.accordion .mymore a{
 padding: 0;
 font-weight: 600;
 letter-spacing: 0.2rem;
}

#mv_outer{

 position: relative;
 box-sizing: border-box;
}
#mv:before{
 position: absolute;
 display: block;
 content: "";
 border: 1px solid rgba(255, 255, 255, 0.95);
 width: calc(100% - 20px);

 height: calc(100% - 20px);
 top: 10px;
 left: 10px;
 z-index: 8;
 pointer-events: none;
}
#mv{
 width: 100%;
 height: 600px;
 min-height: 500px;

}
#mv:after{

 pointer-events: none;
 background: rgba(77, 65, 57, 0.35);
}
#mv .mv_text{
 height: 80%;
 align-items: flex-end;

 width: 100% !important;
 left: 0 !important;
 bottom: 15%!important;
}
#mv .mv_text>div{
 box-sizing: border-box;
 width: 90%;
 color: #fff;
}
#mv .mv_text h2{
 font-size: 60px;
 line-height: 1.1;
 letter-spacing: 0.4rem;
 font-weight: 600;
 font-size: 4rem !important;
 position: relative;
 padding-top: 80px;
}
#mv .mv_text p{
 padding-top: 10px;
 font-size: 2.2rem;
 font-weight:600;
 letter-spacing: 0.3rem;
}
#mv .mv_scroll {
 width: 3px;
 height: auto;
 position: absolute;
 right: 35px;
 left: auto;
 bottom:100px;
}
#mv .mv_scroll a{
 -webkit-writing-mode: vertical-lr;
 -ms-writing-mode: tb-lr;
 writing-mode: vertical-lr;
 letter-spacing: 0.3em;
 font-weight: bold;
 font-size: 10px;
 position: relative;
 padding-bottom: 100px;
 height: auto;
 width: auto;
 text-indent: 0;
 potision: relative;
 transition: all .3s ease-in-out;
 text-align: right;
 color: #fff !important;
 letter-spacing: 1rem;
}
#mv .mv_scroll a::before {
 width: 1px;
 height: 70px;
 transform: none;
 position: absolute;
 bottom: 0;
 left: 1px;
 top: auto;
 background: #ffff;
 transition: all .3s ease-in-out;
}
#mv .mv_scroll a:hover{
 padding-bottom: 80px;
}
#mv .mv_scroll a:hover::before{
 height: 50px;
}
#mv .mv_scroll a:hover::after{
 height: 25px;
}
#mv .mv_pointer {
 bottom: 20px;
 padding: 0 40px;
}
#mv .mv_pointer li:before{
 background: rgba(255, 255, 255, 0.5);
}
#mv .mv_pointer li.current:before{
 background: rgba(255, 255, 255, 0.9);
}
#mv .mv_arrow{
 display: none;
}
@media screen and (max-width: 100vh){
 #mv{
 height: 500px;
 }
}
@media screen and (max-width: 1400px){
 #mv .mv_text h2::before{
 left: 10px;
 border-width: 0px 0 130px 80px;
 }
}
@media screen and (max-width: 900px){
 #mv .mv_text p{
 padding-top: 5px;
 }
}
@media screen and (max-width: 650px){
 #mv .mv_text{
 bottom: 10%!important;
 }
 #mv .mv_text h2{
 font-size: 5.8vw !important;
 letter-spacing: 0.2rem;
 }
 #mv .mv_text p{
 letter-spacing: 0.2rem;
 }
 #mv .mv_text h2::before{
 left: 20px;
 border-width: 0px 0 90px 50px;
 }
 #mv .mv_text h2{
 padding-top: 45px;
 }
}
@media screen and (max-width: 480px){
 #mv .mv_scroll{
 display: none;
 }
}

#lv{
 background: #000;
 height: 350px;
}
@media all and (-ms-high-contrast: none) {
 *::-ms-backdrop, .parallax .parallax_img{

 margin-top: -160px !important;
 }
 *::-ms-backdrop, #lv{

 padding-top: 130px !important;
 }
}
header.over+#lv_outer #lv{
 min-height: 300px;
}
#lv div{
 opacity: 0.6;
}
#lv p{
 left: 0;
 text-align: center;
 width: 100%;
 box-sizing: border-box;
 padding: 0 10px 0;
}
#lv p span{
 display: inline-block;
 font-size: 3.7rem;
 font-weight: 600;
 text-align: center;
 position: relative;
 word-break: break-all;
 line-height: 1.2;
 letter-spacing: 0.2rem;
 color: #fff;
}
@media screen and (max-width: 800px){
 #lv{
 height: 250px;
 }
 #lv p span{
 font-size: 2.8rem;
 }
 header.over+#lv_outer #lv {
 min-height: 250px;
 }

 #lv {
 height: 200px;
 }
}
@media screen and (max-width: 400px){
 #lv{
 width: 100%;
 margin-left: 0;
 }
 #lv p{
 width: 100vw;
 }
}

#pan{
 padding: 0;
 border-bottom: 1px solid var(--i_border_color);
}
#pan li{
 font-size: 1.2rem;
 padding: 5px 0 3px 30px;
}
#pan li:before{
 border-top: 1px solid var(--i_border_color);
 border-right: 1px solid var(--i_border_color);
}
#pan ul li:after{
}

.default_ul li:before{
 border-top: 1px solid var(--i_sub_color);
 border-right: 1px solid var(--i_sub_color);
 height: 5px;
 width: 5px;
 transform: rotate(45deg);
 top: 8px;
 left: 0;
}

.category1 li a{
 border: 1px solid var(--i_border_color);
 border-radius: 50px;
 font-size: 1.4rem;
 color: var(--i_txt_color);
}
.category1 li a:hover,
.category1 li a.current{
 background: var(--i_sub_color);
 color: #fff;
 border: 1px solid var(--i_sub_color);
}

#sidebar section,
#sidebar>div{
 border-bottom: 1px solid var(--i_border_color);
}
#sidebar h2{
 text-align: left;
 font-size: 2.2rem;
}
#sidebar .sidebar_tag li{
 border: 1px solid var(--i_border_color);
 background: var(--i_sub2_color);
}
#sidebar .sidebar_list a{
 position: relative;
 padding-left: 15px;
}

#sidebar .sidebar_list a:before{
 content: "";
 display: block;
 position: absolute;
 border-top: 1px solid var(--i_sub_color);
 border-right: 1px solid var(--i_sub_color);
 height: 5px;
 width: 5px;
 transform: rotate(45deg);
 top: calc(50% - 3px);
 left: 0;
}

.pager li a{
 height: 45px;
 width: 45px;
 line-height: 45px;
 border: 1px solid var(--i_border_color);
 font-size: 1.4rem;
 color: var(--i_txt_color);
}
.pager li:not(.arrow) a:hover,
.pager li:not(.arrow).current a{
 background: var(--i_sub_color);
 color: #fff;
 border: 1px solid var(--i_sub_color);
}
.pager li.arrow a{
 background: none;
}

.pager2 li a{
 border: 1px solid var(--i_border_color);
 line-height: 45px;
 padding: 0 15px;
 font-size: 1.4rem;
 color: var(--i_txt_color);
}
.pager2 li a:hover{
 background: var(--i_sub_color);
 color: #fff;
 border: 1px solid var(--i_sub_color);
}

.popup{
 background: rgba(255,255,255,0.7);
}
.popclose{

}
.poptxt{
 font-size: 1.2rem;
}

#fixbtn{
 margin-bottom: 30px;
 font-size: 1.55rem;
}
#fixbtn .fixbtnwrap{
 background: var(--i_noimg_bg_color);
 border-top: 1px solid var(--i_border_color);
 border-bottom: 1px solid rgba(0, 0, 0, 0.13);
 box-shadow: 0 1px 0 rgba(255, 255, 255, 0.13);
}

#fixbtn.no .fixbtnwrap{
 background-color: transparent;
}
#fixbtn .fixbtntel,
#fixbtn .fixbtntel a,
#fixbtn .fixbtntel span{
}
#fixbtn .fixbtntel{
 border-right: 1px solid var(--i_border_color);
}
#fixbtn .fixbtntel:nth-last-of-type(2){
 border-right: none;
}
#fixbtn .fixbtntel a,
#fixbtn .fixbtntel span{
 font-size: 2.7rem;
 line-height: 1;
 margin-right: 10px;
 color: var(--i_txt_color);
 font-weight: 600;
}
#fixbtn .contents_btn01 a:hover{
 transform: none;
}
#fixbtn .fixbtntel a:last-child,
#fixbtn .fixbtntel span:last-child{
 margin-right: 0;
}
#fixbtn .fixbtntel svg{
 width: 22px;
 height: 22px;
 margin-right: 5px;
 fill: var(--i_txt_color);
}
#fixbtn .contents_btn01{
 border-left: 1px solid rgba(255,255,255,0.1);
}
#fixbtn .contents_btn01:nth-of-type(1){
 border-left: none;
}
#fixbtn .contents_btn01:nth-of-type(1){

 margin-left: auto;
 margin-right: auto;
}
#fixbtn .contents_btn01 a{
 background: var(--i_btn_color);
 border: none;
}
#fixbtn .contents_btn01 span{
 text-align: center;
 padding: 11px 15px 13px;
 line-height: 1.6;
 color: #fff;
}
#fixbtn .contents_btn01 a:hover{
 background: var(--i_btn_hover_color);
}
#fixbtn .contents_btn01 a:before,
#fixbtn .contents_btn01 a:after{
 display: none;
}

#fixbtn #scrolltop:nth-of-type(1){
 margin-left: auto;

 margin-right: 0;

 margin-right: auto;
}
#fixbtn #scrolltop a{
 height: 40px;
 width: 40px;
}
#fixbtn #scrolltop a:before{
 top: 17px;
 left: 3px;
 transform: rotate(45deg);
 transition: 0.2s ease-in-out;
 border-left: 2px solid #5a5a5a;
 border-top: 2px solid #5a5a5a;
 width: 30px;
 height: 30px;
}
#fixbtn #scrolltop a:hover:before{
 opacity: 0.7;
}

#fixbtn.no #scrolltop a:before{
 border-color: rgba(120,120,120,0.6) ;
}
#fixbtn.no #scrolltop a:hover:before{
 border-left: 2px solid rgba(120,120,120,1);
 border-top: 2px solid rgba(120,120,120,1);
}
@media screen and (min-width: 701px){
 footer.add_design2 nav:nth-last-child(2), footer.add_design3 nav:nth-last-child(2), footer.add_design2 .logo:nth-last-child(1), footer.add_design3 .logo:nth-last-child(1), footer.add_design4 nav:nth-last-child(2), footer.add_design5 nav:nth-last-child(2), footer.add_design4 .logo:nth-last-child(1), footer.add_design5 .logo:nth-last-child(1) {
 margin-bottom: 0;
 }
 footer.add_design2 .logo a, footer.add_design3 .logo a, footer.add_design4 .logo a, footer.add_design5 .logo a {
 max-width: 40%;
 }
}
@media screen and (max-width: 600px){
 #fixbtn{
 margin-bottom: 0;
 }
 #fixbtn,
 #fixbtn .fixbtntel a,
 #fixbtn .fixbtntel span{
 font-size: 1.7rem;
 }
 #fixbtn .fixbtntel a,
 #fixbtn .fixbtntel span{
 font-size: 2rem;
 }
 #fixbtn .fixbtntel svg{
 width: 18px;
 height: 18px;
 }
 #fixbtn .contents_btn01 a{
 padding: 0;
 letter-spacing: 0;
 }
 #fixbtn .contents_btn01 a:before{
 display: none;
 }
 #fixbtn .contents_btn01 a span{
 padding: 9px 10px 10px;
 }
}
footer{
 background: var(--i_sub2_color);
 padding: 0;
 color: #5a5a5a;
 text-align: center;
 font-size: 1.35rem;
}
footer a{
 color: var(--i_txt_color);
}
footer nav li{
 letter-spacing: 0.2rem;
 padding: 5px 0;
}
footer nav li a{
 font-weight: 600 !important;
 letter-spacing: 0.3rem;
}
footer .logo{
 width: 180px;
}
footer .sns{
 margin: 0 auto 30px;
}
footer .sns svg{
 width: 40px;
 height: 40px;
 padding: 10px 10px;
 fill: #5a5a5a;
 transition: 0.2s ease-in-out;
}
footer .sns a:hover svg{
 opacity: 0.8;
}
#cp{
 padding: 10px 0;
 font-size: 1.1rem;
 letter-spacing: 0.1rem;
 color: var(--i_txt_color);
}
@media screen and (max-width: 600px){
 footer{
 padding: 0 0 20px;
 }
}
@media screen and (max-width: 700px){
 #fixbtn .inner{
 flex-wrap: nowrap;
 }
}
@media screen and (max-width: 600px){
 footer nav ul{
 border-bottom: 1px solid rgba(0,0,0,0.13);
 }
 footer nav ul li{
 border-top: 1px solid rgba(255,255,255,0.1);
 border-bottom: 1px solid rgba(0,0,0,0.13);
 }
 footer nav ul li:nth-last-of-type(2n){
 border-right: 1px solid rgba(0,0,0,0.13);
 }
 footer nav ul li:nth-last-of-type(2n+1){
 border-left: 1px solid rgba(255,255,255,0.1);
 }
 footer nav ul li:nth-of-type(1),
 footer nav ul li:nth-of-type(1),
 footer nav ul li:nth-of-type(2),
 footer nav ul li:nth-of-type(3):nth-last-of-type(2n-1){
 border-top: 1px solid rgba(0,0,0,0.13);
 }
 footer nav ul li:nth-last-of-type(1),
 footer nav ul li:nth-last-of-type(2){
 border-bottom: 1px solid rgba(255,255,255,0.1);
 }
 footer .logo{
 width: 60px;
 margin: 0 auto 10px;
 }
 #fixbtn .fixbtnwrap{
 border-bottom: none;
 }
 #fixbtn .inner{
 padding: 0;
 }
}

.contents_faq01 dt{
 padding-left: 5rem;
 margin-bottom: 25px;
 min-height: 35px;
 width: 100%;
 padding-right: 15px;
 box-sizing: border-box;
}
.contents_faq01 dd{
 padding-left: 7.3rem;
 margin-bottom: 15px;
 width: 100%;
 padding-right: 15px;
 box-sizing: border-box;
}
.contents_faq01 dt:before,
.contents_faq01 dd:before{
 width: 4rem;
 height: 4rem;
 font-size: 2.6rem;
 line-height: 1.35;
 box-sizing: border-box;
 font-weight: 600;
 background: var(--i_main_color);
 color: #fff;
 text-align: center;
}
.contents_faq01 dd:before{
 line-height: 1.35;
 background: var(--i_sub_color);
}

.contents_related_tags .inner_item{
 border: 1px solid var(--i_border_color);
}
.contents_related_tags .inner_item:hover{
 background: var(--i_sub2_color);
}
.contents_related .inner_item a:hover{
 background: var(--i_sub2_color);
 opacity: 0.8;
}

.block_table_1 table thead{
 background: var(--i_sub2_color);
}
.block_table_1 table thead th,
.block_table_1 table thead td{
 background-color: var(--i_sub2_color);
}
.block_table_1 table th{
 background-color: var(--i_sub2_color);
 border: 1px solid var(--i_border_color);
 text-align: center;

 vertical-align: middle;
}
.block_table_1 table td{
 background-color: #fff;
 border: 1px solid var(--i_border_color);
 vertical-align: middle;
}
.block_table_1 table thead td{
 text-align: center;
 font-weight: bold;
}

.block_table_2 table thead,
.block_table_2 table thead th,
.block_table_2 table thead td,
.block_table_5 table thead,
.block_table_5 table thead th,
.block_table_5 table thead td,
.block_table_6 table thead,
.block_table_6 table thead th,
.block_table_6 table thead td{
 background-color: var(--i_sub2_color);
}
.block_table_2 table th,
.block_table_5 table th,
.block_table_6 table th{
 background-color: var(--i_sub2_color);
 border: 1px solid var(--i_border_color);
 text-align: center;
 vertical-align: middle;
}
.block_table_2 table td,
.block_table_5 table td,
.block_table_6 table td{
 background-color: var(--i_bg_color);
 border: 1px solid var(--i_border_color);
 vertical-align: middle;
}
.block_table_2 table thead td,
.block_table_5 table thead td,
.block_table_6 table thead td{
 text-align: center;
 font-weight: bold;
}
@media screen and (max-width: 500px){
 .block_table_2 table{
 border-bottom: 1px solid var(--i_border_color);
 }
 .block_table_2 table th{
 border-top: 1px solid var(--i_border_color);
 }
 .block_table_2 table td{
 border-top: 1px dotted var(--i_border_color);
 }
}

.block_table_3 table thead,
.block_table_3 table thead th,
.block_table_3 table thead td,
.block_table_7 table thead,
.block_table_7 table thead th,
.block_table_7 table thead td{
 background-color: var(--i_sub2_color);
}
.block_table_3 table th,
.block_table_7 table th{
 background-color: var(--i_sub2_color);
 border: 1px solid var(--i_border_color);
 text-align: center;
 vertical-align: middle;
}
.block_table_3 table td,
.block_table_7 table td{
 background-color: var(--i_bg_color);
 border: 1px solid var(--i_border_color);
 vertical-align: middle;
}
@media screen and (max-width: 500px){
 .block_table_3 table{
 border-bottom: 1px solid var(--i_border_color);
 }
 .block_table_3 table th{
 border-top: 1px solid var(--i_border_color);
 }
 .block_table_3 table td{
 border-top: 1px dotted var(--i_border_color);
 }
}
.block_table_3_item li{
 vertical-align: middle;
}

.gallery_archive .inner_item a,
.gallery_single .inner_item a{
 transition: 0.2s ease-in-out;
 background-color: transparent;
}
.gallery_archive .inner_item a:hover,
.gallery_single .inner_item a:hover{
 background-color: #000;
}
.gallery_archive .inner_item a:hover img,
.gallery_single .inner_item a:hover img{

 opacity: 0.8;
}
.gallery_archive .inner_item a:after,
.gallery_single .inner_item a:after{
 color: #fff;
}
.gallery_archive .inner_item p span,
.gallery_single .inner_item p span{
 color: #fff;
}
.gallery_single_slider .slick-arrow::before{
 border-color: var(--i_btn_color);
}

.widget_gallery01 .slick-arrow{
 height: 40px;
 width: 30px;
 top: calc(50% - 20px);
 left: 0;
}
.widget_gallery01 .slick-next{
 left: auto;
 right: 0;
}

main .widget_gallery01 a,
main .gallery_archive .inner_item a,
main .gallery_single .inner_item a{
 overflow: hidden;
}
main .widget_gallery01 a img,
main .gallery_archive .inner_item a img,
main .gallery_single .inner_item a img{

 object-fit: cover;
 object-position: 50% 50%;
 font-family: 'object-fit: cover; object-position: 50% 50%;';
 backface-visibility: visible;
 transition: 1s ease-out !important;
 transition-property: transform opacity !important;
 transform: scale(1.001,1.001);
}
main .widget_gallery01 a:hover img,
main .gallery_archive .inner_item a:hover img,
main .gallery_single .inner_item a:hover img{
 transform: scale(1.1,1.1);
 opacity: 0.8;
}

.news_archive article .inner_item_img:hover{
 opacity: 0.8;
}
.news_archive article .entry_meta{
 font-size: 1.3rem;
}

.add_design5 #primary article .inner_item_img a i:nth-last-child(1){
 background-size: 50%!important;
}
#sidebar .widget_news02 li a div span i{
 background-size: 50%!important;
}

.widget_coupon .content_wrapper{
 max-width: 900px !important;
}
.widget_coupon .inner_item>div,
.widget_coupon .inner_item>dl{

 font-size: 1.4rem;
 line-height: 1.7;
}

.widget_form .privacypolicy{
 border: 1px solid var(--i_border_color);
}
.widget_form form{
 border-top: 1px solid var(--i_border_color);
}
.widget_form form dl{
 border-bottom: 1px solid var(--i_border_color);
}
.widget_form form dt,
.widget_form form dd{
 vertical-align: middle;
}
.widget_form form dt span{
 color: var(--i_sub2_color);
 color: #D43B3B !important;
 font-size: 1.2rem;
 font-weight: bold;

}
@media screen and (max-width: 770px){

 .widget_form form dt{
 border-bottom: 1px dotted var(--i_border_color);
 }
}
main form dl input,
main form textarea{
 background: var(--i_sub2_color);
 border: 1px solid transparent;
 letter-spacing: 1px;
}
main form dl input:focus,
main form textarea:focus{
 background: #fff;
 border: 1px solid var(--i_border_color);
}
main form .submit input{
 letter-spacing: 3px;
 border: none;
}
main form select{
 background: var(--i_bg_color);
 border: 1px solid var(--i_border_color);
 letter-spacing: 1px;
}
main form input[type=radio] + label,
main form input[type=checkbox] + label{
 padding: 0 15px 0 22px;
}
main form input[type=radio] + label::before,
main form input[type=checkbox] + label::before{
 top: 50%;
 left: 0;
 width: 17px;
 height: 17px;
 margin-top: -9px;
 background: var(--i_sub2_color);
}
main form input[type=radio] + label::before{
 border-radius: 30px;
}
main form input[type=radio]:checked + label::after,
main form input[type=checkbox]:checked + label::after{
 left: 4px;
 width: 9px;
 height: 9px;
 margin-top: -5px;
 background: var(--i_sub_color);
}
main form input[type=radio]:checked + label::after{
 border-radius: 100%;
}
main form input[type=checkbox]:checked + label::after{
}

.widget_link .inner_item_txt{
 font-size: 2rem;
}
.widget_link .inner_item_url{
 color: var(--i_sub_color) !important;
 font-weight: 600;
}
.widget_link.block_link_1 .wrapper_item a{
 border-left: 2px solid var(--i_sub_color) !important;
}

.widget_lp01 li a:hover{
 opacity: 0.8;
}
.widget_lp01 li a div span{
 background-size: 60% auto;
}

.widget_menu01 h3{
 vertical-align: central;
 font-size: 1.7rem;
 letter-spacing: 1px;
 margin-bottom: 15px;
}
.widget_menu01 li dd{
 font-size: 1.3rem;
 letter-spacing: 0;
}

.widget_menu02 h3{
 vertical-align: central;
 font-size: 1.7rem;
 letter-spacing: 1px;
}
.widget_menu02 li>p{
 font-size: 1.3rem;

 letter-spacing: 0;
}

.block_news_2 li{
 box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.05) !important;
 border-radius: 10px;
}
.block_news_2 li a{
 padding: 30px;
 border-radius: 5px;
}
.block_news_2 li a:after{
 border: 0 solid #fdf6f1 !important;
 border-radius: 5px;
}
.block_news_2 li a:hover:after{
 border-width: 10px !important;;
}

.widget_staff01 .inner_item a:hover *{
 opacity: 0.8;
}
.widget_staff01 .sub{
 font-size: 1.2rem;
 font-weight: bold;
}

.widget_tel .inner_item_tel a,
.widget_tel .inner_item_tel span{
 font-size: 3.6rem;
 letter-spacing: 0.1rem;
 line-height: 1.1;
 padding: 20px;
}
@media screen and (max-width: 450px){
 .widget_tel .inner_item_tel a,
 .widget_tel .inner_item_tel span{
 font-size: 2.6rem;
 padding: 15px 10px;
 }
 .widget_tel .inner_item_tel img{
 margin: 0 5px -2px 0;
 }
 .widget_tel .inner_item_tel svg{
 height: 16px;
 width: 16px;
 }
}

.glossary_archive .content_wrapper article{
 margin-bottom: 30px;
 padding-bottom: 30px;
}
.glossary_archive .content_wrapper .heading.block_header_2{
 margin-bottom: 10px;
}
.glossary_archive .content_wrapper .heading.block_header_2 .h{
 font-size: 1.8rem;
}
.glossary_archive .content_wrapper .heading.block_header_2 a:after{
 content: "View More";
 position: absolute;
 width: 150px;
 bottom: 32px;
 right: 0;
 text-align: center;
 font-size: 1.5rem;
 font-weight: normal;
 padding: 3px 10px;
}
.glossary_archive .content_wrapper article .entry_body{
 padding-right: 180px;
}

@media screen and (max-width: 1224px){
 .glossary_archive .content_wrapper .heading.block_header_2 a:after{
 bottom: calc(32px + 1.8rem);
 }
}
@media screen and (max-width: 650px){
 .glossary_archive .content_wrapper article{
 padding-bottom: 60px;
 }
 .glossary_archive .content_wrapper .heading.block_header_2 a:after{
 bottom: 30px;
 }
 .glossary_archive .content_wrapper article .entry_body{
 padding-right: 0;
 }
}

.recruit_archive.add_design1 .recruitment_list .inner_item{
 background: rgba(255,255,255,.8);
}

.index main>section:first-child +div.composite_box01 .heading.block_header_4 .h,
.index main>section:first-child +div+div.composite_box01 .heading.block_header_4 .h{
 font-size: 2.5rem;
 letter-spacing: 0.1rem;
}
@media screen and (max-width: 800px){
 .index main>section:first-child +div.composite_box01 .heading.block_header_4 .h,
 .index main>section:first-child +div+div.composite_box01 .heading.block_header_4 .h{
 font-size: 2.1rem;
 }
}

.block_news_2 li{
 border: 1px solid var(--i_border_color);
}

.contents_faq01.accordion .mymore a::after{
}
.composite_box01.block_images_11 .inner_item .heading h3{
 color: #fff;
 font-size: 2.6rem !important;;
}
.composite_box01.block_images_11 .inner_item_txt .heading{
 border-radius: 8px;
}
#top_thought + section >.content_wrapper{
 background: #faf3e4 !important;
 padding: 75px;
 width: 96%;
}
#top_seo01 + section .parallax_img{
 opacity: 1;
 filter: blur(7px);
}
#top_seo01 + section >.content_wrapper{
 background: rgba(255, 255, 255, 0.85) !important;
 padding: 75px;
 width: 96%;
}
#top_seo + section .inner_item_txt .heading h3{
 font-size: 3.6rem;
 padding-left: 0;
 color: var(--i_txt_color);
 border-bottom:none;
 margin-bottom: 0;
 font-weight: 600;
}
#top_seo + section .inner_item_txt{
 padding: 0 80px;
}
#top_seo + section .inner_item_txt .heading h3:before{
 display: none;
}
#top_seo + section .inner_item_txt .heading p{
 font-size: 1.8rem;
 font-weight: 600;
 color: var(--i_main_color);
 padding-left: 0;
}
#top_col2+.composite_box01 .heading.block_header_4 .h{
 font-size: 3.6rem !important;
 line-height: 1.4;
 color: var(--i_t_color);
 letter-spacing: 0.2rem;
}
#top_col2+.composite_box01 .heading.block_header_4 p{
 font-size: 1.8rem;
 color: var(--i_main_color);
 letter-spacing: 0.2rem;
}
@media screen and (min-width: 481px){
 #top_col2+.composite_box01 .inner_item:last-of-type{
 flex-direction: column-reverse;
 }
 #top_col2+.composite_box01 .inner_item:last-of-type .inner_item_txt{
 margin-top: 0px;
 margin-bottom: 10px;
 }
}
@media screen and (max-width: 900px){
 #top_seo01 + section >.content_wrapper,
 #top_thought + section >.content_wrapper{
 padding: 35px; 
 max-width: 93% !important;
 }
 #top_seo + section .inner_item_txt .heading h3{
 font-size: 3.0rem !important;
 }
 #top_col2+.composite_box01 .heading.block_header_4 .h{
 font-size: 2.8rem !important;
 }
 #top_col2+.composite_box01 .heading.block_header_4 p{
 font-size: 1.5rem;
 } 
}
@media screen and (max-width: 500px){ 
 .block_news_1.add_design14 .slick-arrow{
 margin-top: -50px;
 }
 .block_news_1 ul li:nth-of-type(1) {
 border-top: none;
 }
 .composite_box01.block_images_11 .inner_item_img img, .composite_box01.block_images_11 .inner_item_txt .pwrap .iwrap {
 height: 370px !important;
 }
 .composite_box01.block_images_11 .inner_item .heading h3 {
 font-size: 2.3rem !important;
 }
 .composite_box01.block_images_11 .inner_item_txt .heading {
 border-radius: 0;
 }
 section#nbp2850501\ 2850501 {
 background-size: 100% !important;
 }
 div#nbp2852973\ 2852973,
 div#nbp2850504\ 2850504,
 div#nbp2850508\ 2850508 {
 background-size: 70% !important;
 } 
}

header#pattern2.width_full .logo{
 background: transparent!important;
 }
header .logo, header .logo a {
 max-width: 380px;
}
.scrolled header .logo, .scrolled header .logo a {
 max-width: 300px;
}
@media screen and (max-width: 900px){
body.scrolled header#pattern2.width_full .logo{
 min-height: inherit!important;
}
body.scrolled header .logo a img {
 max-width: 180px;
}
header#pattern2.width_full .logo {
 padding: 15px 0 10px 10px !important;
}
body.scrolled header#pattern2.width_full .logo {
 padding: 10px !important;
}
}

#load img {
 max-width: 300px;
}
@media screen and (max-width: 650px){
#load img {
 max-width: 200px;
}
}

.no_img img{
transform: scale(0.9) !important;
}

@media screen and (min-width: 701px){
footer.add_design2 .logo a,
footer.add_design3 .logo a,
footer.add_design4 .logo a,
footer.add_design5 .logo a {
 max-width: 95%;
}
}
@media screen and (max-width: 600px){
footer .logo {
 width: 180px;
}
}

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&family=Oswald:wght@500;600&display=swap');

:root {
 --uraken-main: #37474F;
 --uraken-dark: #263238;
 --uraken-accent: #E67E00;
 --uraken-accent-dk: #C56E00;
 --uraken-light: #ECEFF1;
 --uraken-mid: #CFD8DC;
 --uraken-white: #ffffff;
 --uraken-text: #212121;
 --uraken-sub: #546E7A;
}

body, p, li, td, dd, dt, span {
 font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', sans-serif !important;
 -webkit-font-smoothing: antialiased !important;
}

header.header_class {
 background: var(--uraken-dark) !important;
 border-bottom: 3px solid var(--uraken-accent) !important;
 box-shadow: 0 2px 24px rgba(0,0,0,0.4) !important;
}
header.header_class img {
 filter: brightness(0) invert(1) !important;
}
header.header_class nav a {
 color: #B0BEC5 !important;
 font-weight: 500 !important;
 font-size: 0.88rem !important;
 letter-spacing: 0.07em !important;
 padding: 6px 14px !important;
 border-bottom: 2px solid transparent !important;
 text-decoration: none !important;
 transition: color 0.22s, border-color 0.22s !important;
}
header.header_class nav a:hover {
 color: #fff !important;
 border-bottom-color: var(--uraken-accent) !important;
}
.tel { color: #fff !important; font-weight: 700 !important; }
header.header_class a[href*="/contact/"] {
 background: var(--uraken-accent) !important;
 color: #fff !important;
 border-radius: 4px !important;
 padding: 9px 20px !important;
 font-weight: 700 !important;
 text-decoration: none !important;
 box-shadow: 0 3px 10px rgba(230,126,0,0.25) !important;
}
.header_sns_facebook, .header_sns_twitter,
.header_sns_line, .header_sns_instagram, .header_sns_tiktok {
 filter: brightness(0) invert(0.75) !important;
 opacity: 0.8 !important;
 transition: opacity 0.2s !important;
}
.header_sns_facebook:hover, .header_sns_twitter:hover,
.header_sns_line:hover, .header_sns_instagram:hover,
.header_sns_tiktok:hover {
 opacity: 1.0 !important;
 filter: brightness(0) invert(1) !important;
}

.heading h2.h,
.block_header_6 h2.h,
.block_header_1 h2.h {
 font-family: 'Noto Sans JP', sans-serif !important;
 font-size: clamp(1.55rem, 2.8vw, 2.1rem) !important;
 font-weight: 900 !important;
 color: var(--uraken-dark) !important;
 letter-spacing: 0.02em !important;
 line-height: 1.45 !important;
 padding-bottom: 16px !important;
 margin-bottom: 8px !important;
}
.heading h2.h::after,
.block_header_6 h2.h::after,
.block_header_1 h2.h::after {
 content: '' !important;
 display: block !important;
 width: 48px !important;
 height: 3px !important;
 background: var(--uraken-accent) !important;
 margin: 12px auto 0 !important;
 border-radius: 2px !important;
}
h3 {
 font-weight: 700 !important;
 font-size: 1.1rem !important;
 color: var(--uraken-dark) !important;
}

.block_text_1 .content_wrapper,
.hp .content_wrapper {
 max-width: 820px !important;
 margin: 0 auto !important;
}
.block_text_1 p,
.hp p {
 font-size: 0.95rem !important;
 line-height: 2.0 !important;
 color: var(--uraken-text) !important;
 text-align: left !important;
 margin-bottom: 1.2em !important;
}
.heading + p,
.block_header_6 + p,
.add_text {
 color: var(--uraken-sub) !important;
 font-size: 0.93rem !important;
 line-height: 1.85 !important;
 text-align: center !important;
 max-width: 640px !important;
 margin: 0 auto 2rem !important;
}

section.dec1_2,
.widget_shop01 {
 background: var(--uraken-light) !important;
 padding-top: 80px !important;
 padding-bottom: 80px !important;
}
section.block_image_1,
.composite_box01,
section.hp {
 background: var(--uraken-white) !important;
 padding-top: 80px !important;
 padding-bottom: 80px !important;
}

.contents_btn01:not(.block_button_2) a, .block_button_1 a {
 display: inline-flex !important;
 align-items: center !important;
 gap: 8px !important;
 background: var(--uraken-accent) !important;
 color: #fff !important;
 font-weight: 700 !important;
 font-size: 0.95rem !important;
 letter-spacing: 0.1em !important;
 padding: 15px 42px !important;
 border-radius: 4px !important;
 text-decoration: none !important;
 box-shadow: 0 4px 16px rgba(230,126,0,0.3) !important;
 transition: all 0.22s ease !important;
 border: none !important;
}
.contents_btn01 a::after, .block_button_1 a::after {
 content: '→' !important;
 font-weight: 400 !important;
}
.contents_btn01:not(.block_button_2) a:hover, .block_button_1 a:hover {
 background: var(--uraken-accent-dk) !important;
 transform: translateY(-2px) !important;
 box-shadow: 0 7px 20px rgba(230,126,0,0.4) !important;
 color: #fff !important;
 text-decoration: none !important;
}

.composite_box01 .wrapper_item {
 display: grid !important;
 grid-template-columns: repeat(3, 1fr) !important;
 gap: 20px !important;
 padding: 0 !important;
}
.composite_box01 .inner_item {
 background: var(--uraken-white) !important;
 border-radius: 10px !important;
 overflow: hidden !important;
 box-shadow: 0 4px 20px rgba(0,0,0,0.10) !important;
 transition: transform 0.32s ease, box-shadow 0.32s ease !important;
 position: relative !important;
 cursor: pointer !important;
 display: flex !important;
 flex-direction: column !important;
}
.composite_box01 .inner_item:hover {
 transform: translateY(-6px) !important;
 box-shadow: 0 12px 36px rgba(0,0,0,0.18) !important;
}
.composite_box01 .inner_item_img {
 position: relative !important;
 overflow: hidden !important;
 height: 220px !important;
}
.composite_box01 .inner_item_img img {
 width: 100% !important;
 height: 100% !important;
 object-fit: cover !important;
 transition: transform 0.5s ease !important;
 display: block !important;
}
.composite_box01 .inner_item:hover .inner_item_img img {
 transform: scale(1.07) !important;
}
.composite_box01 .inner_item::before {
 content: '' !important;
 position: absolute !important;
 top: 0 !important;
 left: 0 !important;
 right: 0 !important;
 height: 3px !important;
 background: var(--uraken-accent) !important;
 z-index: 2 !important;
}
.composite_box01 .inner_item_txt {
 padding: 14px 18px !important;
 background: var(--uraken-white) !important;
 flex: 1 !important;
}
.composite_box01 .inner_item_txt p,
.composite_box01 .inner_item_txt span {
 font-size: 0.82rem !important;
 color: var(--uraken-sub) !important;
 line-height: 1.6 !important;
}
.block_image_1 img {
 border-radius: 10px !important;
 box-shadow: 0 6px 24px rgba(0,0,0,0.12) !important;
 transition: transform 0.35s ease, box-shadow 0.35s ease !important;
 max-width: 100% !important;
}
.block_image_1 a:hover img {
 transform: scale(1.03) !important;
 box-shadow: 0 10px 32px rgba(0,0,0,0.20) !important;
}

.widget_shop01 dl {
 display: table !important;
 width: 100% !important;
 border: 1px solid var(--uraken-mid) !important;
 border-radius: 8px !important;
 overflow: hidden !important;
 margin-top: 1.5rem !important;
 border-collapse: collapse !important;
}
.widget_shop01 dl > * {
 display: table-row !important;
}
.widget_shop01 dl dt {
 display: table-cell !important;
 background: var(--uraken-dark) !important;
 color: #fff !important;
 font-weight: 700 !important;
 font-size: 0.85rem !important;
 padding: 13px 20px !important;
 width: 140px !important;
 border-bottom: 1px solid #37474F !important;
 letter-spacing: 0.05em !important;
 vertical-align: middle !important;
}
.widget_shop01 dl dd {
 display: table-cell !important;
 padding: 13px 20px !important;
 font-size: 0.9rem !important;
 color: var(--uraken-text) !important;
 border-bottom: 1px solid var(--uraken-mid) !important;
 vertical-align: middle !important;
}

footer.add_design5, footer {
 background: var(--uraken-dark) !important;
 color: #90A4AE !important;
 border-top: 3px solid var(--uraken-accent) !important;
}
footer a { color: #90A4AE !important; text-decoration: none !important; transition: color 0.2s !important; }
footer a:hover { color: var(--uraken-accent) !important; }
footer img { filter: brightness(0) invert(0.8) !important; }
footer .tel { color: #fff !important; font-weight: 700 !important; }
.fixbtnwrap {
 background: var(--uraken-dark) !important;
 border-top: 2px solid var(--uraken-accent) !important;
}
.fixbtntel { color: #fff !important; font-weight: 700 !important; }
.fixbtnwrap a[href*="contact"] {
 background: var(--uraken-accent) !important;
 color: #fff !important;
 border-radius: 4px !important;
 font-weight: 700 !important;
 padding: 12px 28px !important;
 display: inline-block !important;
 text-decoration: none !important;
 box-shadow: 0 4px 14px rgba(230,126,0,0.3) !important;
}

#uraken-stats-banner {
 background: var(--uraken-dark);
 padding: 48px 24px;
 text-align: center;
}
#uraken-stats-banner .stats-inner {
 display: flex;
 justify-content: center;
 align-items: center;
 gap: 0;
 flex-wrap: nowrap;
 max-width: 900px;
 margin: 0 auto;
 padding: 0 24px;
}
#uraken-stats-banner .stat-item {
 flex: 1;
 text-align: center;
 padding: 0 16px;
 min-width: 0;
}
#uraken-stats-banner .stat-num {
 font-family: 'Oswald', 'Noto Sans JP', sans-serif;
 font-size: 3.2rem;
 font-weight: 600;
 color: var(--uraken-accent);
 line-height: 1;
 display: block;
 letter-spacing: 0.02em;
}
#uraken-stats-banner .stat-unit {
 font-size: 1.1rem;
 color: #B0BEC5;
 font-weight: 400;
}
#uraken-stats-banner .stat-label {
 display: block;
 color: #90A4AE;
 font-size: 0.82rem;
 margin-top: 8px;
 letter-spacing: 0.1em;
}
#uraken-stats-banner .stat-divider {
 width: 1px;
 height: 60px;
 background: #455A64;
 flex-shrink: 0;
}

#uraken-map-embed {
 width: 100%;
 max-width: 600px;
 border-radius: 10px;
 overflow: hidden;
 box-shadow: 0 6px 24px rgba(0,0,0,0.15);
 margin-top: 28px;
}
#uraken-map-embed iframe {
 width: 100%;
 height: 300px;
 border: none;
 display: block;
}

.uk-eng-label {
 color: #E67E00 !important;
 font-size: 0.78rem !important;
 font-weight: 700 !important;
 letter-spacing: 0.22em !important;
 text-align: center !important;
 margin-bottom: 6px !important;
 font-family: 'Oswald', sans-serif !important;
 display: block !important;
}

.uk-work-label {
 position: absolute;
 top: 12px;
 left: 12px;
 background: #E67E00;
 color: #fff;
 font-size: 0.72rem;
 font-weight: 700;
 padding: 4px 10px;
 border-radius: 3px;
 letter-spacing: 0.08em;
 z-index: 10;
 font-family: 'Noto Sans JP', sans-serif;
}
.uk-work-label.uk-dark {
 background: #37474F;
}

.uk-anim {
 opacity: 1 !important;
 transform: translateY(0) !important;
 transition: opacity 0.55s ease, transform 0.55s ease;
}
.uk-anim.uk-visible {
 opacity: 1 !important;
 transform: translateY(0) !important;
}
.uk-anim-delay-1 { transition-delay: 0.1s; }
.uk-anim-delay-2 { transition-delay: 0.2s; }
.uk-anim-delay-3 { transition-delay: 0.3s; }

@media (max-width: 768px) {
 section.dec1_2, section.block_image_1,
 .composite_box01, section.hp, .widget_shop01 {
 padding-top: 52px !important;
 padding-bottom: 52px !important;
 }
 .heading h2.h { font-size: 1.3rem !important; }
 .composite_box01 .wrapper_item {
 grid-template-columns: 1fr !important;
 gap: 14px !important;
 }
 .composite_box01 .inner_item_img { height: 200px !important; }
 .contents_btn01:not(.block_button_2) a, .block_button_1 a {
 padding: 13px 28px !important;
 font-size: 0.88rem !important;
 width: 100% !important;
 justify-content: center !important;
 box-sizing: border-box !important;
 }
 .widget_shop01 dl { display: block !important; }
 .widget_shop01 dl > * { display: block !important; }
 .widget_shop01 dl dt {
 display: block !important;
 width: 100% !important;
 background: var(--uraken-dark) !important;
 color: #fff !important;
 padding: 8px 16px !important;
 font-size: 0.8rem !important;
 }
 .widget_shop01 dl dd {
 display: block !important;
 width: 100% !important;
 padding: 10px 16px !important;
 border-bottom: 1px solid var(--uraken-mid) !important;
 }
 #uraken-stats-banner .stats-inner {
 flex-wrap: wrap !important;
 gap: 24px !important;
 }
 #uraken-stats-banner .stat-divider { display: none !important; }
 #uraken-stats-banner .stat-num { font-size: 2.4rem !important; }
 .header_sns_facebook, .header_sns_twitter,
 .header_sns_line, .header_sns_instagram, .header_sns_tiktok {
 display: none !important;
 }
}
@media (max-width: 480px) {
 .heading h2.h { font-size: 1.15rem !important; }
}

.uk-anim,
section, .composite_box01, .contents_btn01,
.widget_shop01, .block_text_1, .hp, .block_image_1,
.wrapper_item, .inner_item, .content_wrapper,
.heading, .block_header_6, .block_header_1 {
 opacity: 1 !important;
 transform: none !important;
 visibility: visible !important;
}

.mv_text h1, .mv_text h2,
.slide_txt h1, .slide_txt h2,
[class*="slide"] h1, [class*="slide"] h2 {
 color: #ffffff !important;
 text-shadow: 0 2px 20px rgba(0,0,0,0.8), 0 1px 4px rgba(0,0,0,0.6) !important;
 font-weight: 900 !important;
}

.block_text_1 p,
.hp p,
main p {
 color: #212121 !important;
 font-size: 0.95rem !important;
 line-height: 2.0 !important;
}

.add_text,
.heading p,
.block_header_6 p,
.block_header_1 p {
 color: #37474F !important;
 font-size: 0.95rem !important;
 line-height: 1.85 !important;
}

#uraken-stats-banner .stat-unit {
 color: #CFD8DC !important;
 font-size: 1.1rem !important;
}
#uraken-stats-banner .stat-label {
 color: #B0BEC5 !important;
 font-size: 0.85rem !important;
}

.widget_shop01 dl dd {
 color: #212121 !important;
 font-size: 0.92rem !important;
 background: #ffffff !important;
}

header.header_class nav li a {
 color: #CFD8DC !important;
 font-size: 0.9rem !important;
 font-weight: 500 !important;
}
header.header_class nav li a:hover {
 color: #ffffff !important;
}

.composite_box01 .inner_item_txt p,
.composite_box01 .inner_item_txt span,
.uk-card-cta {
 color: #546E7A !important;
 font-size: 0.85rem !important;
}

footer.add_design5 nav a,
footer nav a,
footer li a {
 color: #90A4AE !important;
 font-size: 0.88rem !important;
}
footer.add_design5 nav a:hover,
footer nav a:hover {
 color: #E67E00 !important;
}

.fixbtnwrap .fixbtntel {
 color: #ffffff !important;
 font-size: 1.3rem !important;
 font-weight: 700 !important;
}
.fixbtnwrap > span,
.fixbtnwrap p {
 color: #B0BEC5 !important;
 font-size: 0.82rem !important;
}

.uk-eng-label {
 color: #E67E00 !important;
 font-size: 0.8rem !important;
 font-weight: 700 !important;
 letter-spacing: 0.2em !important;
}

.heading h2.h,
.block_header_6 h2.h,
.block_header_1 h2.h {
 color: #1A2633 !important;
 font-size: clamp(1.5rem, 2.8vw, 2.0rem) !important;
 font-weight: 900 !important;
 line-height: 1.5 !important;
}

#uraken-stats-banner {
 padding: 40px 20px !important;
}
#uraken-stats-banner .stats-inner {
 max-width: 900px !important;
 gap: 0 !important;
}
#uraken-stats-banner .stat-item {
 padding: 10px 20px !important;
}
#uraken-stats-banner .stat-num {
 font-size: 4.5rem !important;
 font-weight: 700 !important;
 line-height: 1 !important;
}
#uraken-stats-banner .stat-unit {
 font-size: 1.4rem !important;
 font-weight: 600 !important;
 vertical-align: middle !important;
 margin-left: 2px !important;
}
#uraken-stats-banner .stat-label {
 font-size: 1.0rem !important;
 margin-top: 10px !important;
 letter-spacing: 0.12em !important;
 color: #B0BEC5 !important;
}
#uraken-stats-banner .stat-divider {
 width: 1px !important;
 height: 60px !important;
 background: rgba(255,255,255,0.2) !important;
 align-self: center !important;
}

.composite_box01 .inner_item {
 width: 100% !important;
 min-height: 0 !important;
}
.composite_box01 .inner_item > a {
 display: flex !important;
 flex-direction: column !important;
 width: 100% !important;
 height: 100% !important;
 text-decoration: none !important;
 border-radius: 8px !important;
 overflow: hidden !important;
 box-shadow: 0 2px 12px rgba(0,0,0,0.10) !important;
 transition: transform 0.2s, box-shadow 0.2s !important;
 background: #fff !important;
}
.composite_box01 .inner_item > a:hover {
 transform: translateY(-4px) !important;
 box-shadow: 0 8px 24px rgba(0,0,0,0.16) !important;
}

.composite_box01 .inner_item .inner_item_img {
 width: 100% !important;
 height: 220px !important;
 overflow: hidden !important;
 position: relative !important;
 flex-shrink: 0 !important;
}
.composite_box01 .inner_item .inner_item_img img {
 width: 100% !important;
 height: 100% !important;
 object-fit: cover !important;
 display: block !important;
}

.composite_box01 .inner_item .inner_item_txt {
 padding: 16px 16px 20px !important;
 flex: 1 !important;
 display: flex !important;
 flex-direction: column !important;
}
.composite_box01 .inner_item .inner_item_txt p,
.composite_box01 .inner_item .inner_item_txt span {
 color: #37474F !important;
 font-size: 0.92rem !important;
 line-height: 1.5 !important;
}

.composite_box01 .wrapper_item {
 display: grid !important;
 grid-template-columns: repeat(3, 1fr) !important;
 gap: 24px !important;
 padding: 0 20px !important;
}
@media screen and (max-width: 768px) {
 .composite_box01 .wrapper_item {
 grid-template-columns: repeat(2, 1fr) !important;
 gap: 16px !important;
 }
 #uraken-stats-banner .stat-num {
 font-size: 3.2rem !important;
 }
 #uraken-stats-banner .stat-label {
 font-size: 0.85rem !important;
 }
}
@media screen and (max-width: 480px) {
 .composite_box01 .wrapper_item {
 grid-template-columns: 1fr !important;
 }
}

.widget_shop01 .tel {
 color: #212121 !important;
 font-size: 1rem !important;
}
.widget_shop01 .tel a {
 color: #E67E00 !important;
 font-size: 1rem !important;
 font-weight: 600 !important;
 text-decoration: none !important;
}
.widget_shop01 .tel a:hover {
 color: #C56E00 !important;
 text-decoration: underline !important;
}

.widget_shop01 dd {
 color: #212121 !important;
 font-size: 0.95rem !important;
}
.widget_shop01 dd a {
 color: #E67E00 !important;
 font-weight: 600 !important;
}

h2.h::before,
.heading h2::before,
.block_header h2::before,
.block_header_1 h2::before,
.block_header_4 h2::before,
.block_header_6 h2::before {
 display: none !important;
 content: none !important;
}

h2.h::after,
.heading h2::after,
.block_header h2::after,
.block_header_1 h2::after,
.block_header_4 h2::after,
.block_header_6 h2::after {
 content: "" !important;
 display: block !important;
 width: 48px !important;
 height: 3px !important;
 background: #E67E00 !important;
 margin: 12px auto 0 !important;
 border-radius: 2px !important;
}

.align-left h2.h::after,
.align-left .heading h2::after {
 margin: 12px 0 0 !important;
}

.composite_box01 .inner_item {
 flex-direction: column !important;
}

.composite_box01 .inner_item > a {
 flex-direction: column !important;
 align-items: stretch !important;
}

.composite_box01 .inner_item .inner_item_img {
 flex-shrink: 0 !important;
 height: 200px !important;
 width: 100% !important;
 position: relative !important;
}

.composite_box01 .inner_item .inner_item_txt {
 position: relative !important;
 padding: 14px 16px 16px !important;
 background: #fff !important;
 flex: 1 !important;
 display: flex !important;
 flex-direction: column !important;
 justify-content: flex-start !important;
}

.uk-work-label {
 position: absolute !important;
 top: 10px !important;
 left: 10px !important;
 font-size: 0.75rem !important;
 font-weight: 700 !important;
 color: #fff !important;
 padding: 4px 10px !important;
 border-radius: 4px !important;
 z-index: 2 !important;
 white-space: nowrap !important;
}

.uk-card-cta {
 font-size: 0.88rem !important;
 color: #546E7A !important;
 font-weight: 600 !important;
 margin-top: 10px !important;
 padding: 0 !important;
 line-height: 1.4 !important;
 display: block !important;
}
.uk-card-cta span {
 color: #E67E00 !important;
 font-weight: 700 !important;
 font-size: 1rem !important;
}

#uraken-stats-banner .stat-label {
 font-size: 0.95rem !important;
 letter-spacing: 0.08em !important;
}

.uk-eng-label,
.heading p.uk-eng-label {
 font-size: 0.78rem !important;
 letter-spacing: 0.18em !important;
 color: #E67E00 !important;
 font-weight: 600 !important;
}

.block_header_6 p:not(.uk-eng-label),
.block_header p:not(.uk-eng-label),
.block_header_1 p:not(.uk-eng-label),
.block_header_4 p:not(.uk-eng-label) {
 font-size: 0.78rem !important;
 letter-spacing: 0.18em !important;
}

.inner_item_txt p,
.inner_item_txt span {
 font-size: 0.88rem !important;
 line-height: 1.6 !important;
 color: #37474F !important;
}

p.add_text {
 font-size: 0.92rem !important;
}

#fixbtntel p,
.fixbtntel p {
 font-size: 0.82rem !important;
}

.widget_shop01 .fax,
.widget_shop01 .fax a {
 font-size: 0.92rem !important;
 color: #37474F !important;
}

body {
 font-size: max(14px, 0.875rem) !important;
}
p, li, span, a, td, th, dd, dt, label {
 font-size: max(0.875rem, inherit) !important;
}

.block_header_2 p,
.heading.block_header_2 p,
.block_header_2 p:not(.uk-eng-label) {
 font-size: 0.875rem !important;
 line-height: 1.7 !important;
}

.infotxt p,
.infotxt {
 font-size: 0.875rem !important;
}

.stat-label,
#uraken-stats-banner .stat-label {
 font-size: 0.88rem !important;
 color: #90A4AE !important;
}

p.uk-eng-label,
.uk-eng-label {
 font-size: 0.72rem !important;
 letter-spacing: 0.2em !important;
 color: #E67E00 !important;
 font-weight: 700 !important;
 margin-bottom: 6px !important;
}

p { font-size: max(0.875rem, 1rem) !important; }

p.uk-eng-label { font-size: 0.72rem !important; }
.stat-label { font-size: 0.88rem !important; }

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;700&family=Oswald:wght@400;500;600&display=swap');

h1, h2, h3,
.h, .h2, .h3,
.heading h2,
.section_heading h2,
.block_header h2,
.block_header_2 h2,
#uraken-stats-banner,
.uk-section-title {
 font-family: 'Noto Serif JP', 'Hiragino Mincho ProN', 'Yu Mincho', serif !important;
 font-weight: 700 !important;
 letter-spacing: 0.05em !important;
}

h4, h5, h6,
.subheading, .caption,
.uk-eng-label,
p.uk-eng-label {
 font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', sans-serif !important;
}

body, p, li, td, th, dt, dd, span, a, label, button {
 font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', sans-serif !important;
}

.stat-num,
.stat-number,
#uraken-stats-banner .stat-num,
#uraken-stats-banner .stat-number {
 font-family: 'Oswald', 'Arial Narrow', sans-serif !important;
 font-weight: 600 !important;
 letter-spacing: 0.02em !important;
}

.uk-eng-label,
p.uk-eng-label {
 font-family: 'Oswald', 'Arial Narrow', sans-serif !important;
 font-weight: 500 !important;
 letter-spacing: 0.25em !important;
}

h1,
h2,
h3,
h2.h,
h3.h,
.heading h2,
.heading h2.h,
.block_header_1 h2,
.block_header_1 h2.h,
.block_header_6 h2,
.block_header_6 h2.h,
.section_heading h2,
.block_header h2,
.block_header_2 h2,
.mv_text h2,
.mv_text div h2 {
 font-family: 'Noto Serif JP', 'Hiragino Mincho ProN', 'Yu Mincho', serif !important;
 font-weight: 700 !important;
}

p.uk-eng-label,
.heading p.uk-eng-label,
.block_header p.uk-eng-label,
.block_header_6 p.uk-eng-label {
 font-family: 'Oswald', 'Arial Narrow', sans-serif !important;
 font-weight: 500 !important;
 letter-spacing: 0.25em !important;
}

.widget_form.block_form_1 {
 max-width: 860px !important;
 margin-left: auto !important;
 margin-right: auto !important;
}

#MainForm11200 dl {
 display: flex !important;
 align-items: flex-start !important;
 border-bottom: 1px solid #ECEFF1 !important;
 padding: 18px 0 !important;
 margin: 0 !important;
 gap: 24px !important;
}

#MainForm11200 dt {
 flex: 0 0 200px !important;
 font-weight: 600 !important;
 font-size: 0.95rem !important;
 color: #37474F !important;
 padding-top: 10px !important;
 line-height: 1.5 !important;
}

#MainForm11200 dd {
 flex: 1 !important;
 margin: 0 !important;
}

#MainForm11200 dt .badge_required,
#MainForm11200 .required-badge {
 background: #E67E00 !important;
 color: #fff !important;
 font-size: 0.7rem !important;
 padding: 2px 7px !important;
 border-radius: 3px !important;
 margin-left: 8px !important;
 vertical-align: middle !important;
 font-weight: 700 !important;
}

#MainForm11200 input[type="text"],
#MainForm11200 input[type="email"],
#MainForm11200 input[type="tel"],
#MainForm11200 textarea {
 background: #fff !important;
 border: 1.5px solid #B0BEC5 !important;
 border-radius: 6px !important;
 padding: 12px 16px !important;
 font-size: 1rem !important;
 color: #263238 !important;
 width: 100% !important;
 box-sizing: border-box !important;
 transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
 font-family: 'Noto Sans JP', sans-serif !important;
}

#MainForm11200 input[type="text"]:focus,
#MainForm11200 input[type="email"]:focus,
#MainForm11200 input[type="tel"]:focus,
#MainForm11200 textarea:focus {
 border-color: #E67E00 !important;
 box-shadow: 0 0 0 3px rgba(230, 126, 0, 0.12) !important;
 outline: none !important;
}

#MainForm11200 textarea {
 min-height: 160px !important;
 resize: vertical !important;
}

#MainForm11200 input[type="file"] {
 font-size: 0.9rem !important;
 color: #546E7A !important;
}

#MainForm11200 .submit,
#MainForm11200 div.submit {
 text-align: center !important;
 padding: 32px 0 0 !important;
}

#MainForm11200 .submit input[type="button"],
#MainForm11200 .submit button,
#MainForm11200 input[type="submit"],
#MainForm11200 button[type="submit"] {
 background: #E67E00 !important;
 color: #fff !important;
 border: none !important;
 border-radius: 8px !important;
 padding: 18px 64px !important;
 font-size: 1.1rem !important;
 font-weight: 700 !important;
 letter-spacing: 0.1em !important;
 cursor: pointer !important;
 font-family: 'Noto Sans JP', sans-serif !important;
 transition: background 0.2s ease, transform 0.1s ease !important;
 box-shadow: 0 4px 16px rgba(230, 126, 0, 0.3) !important;
}

#MainForm11200 .submit input[type="button"]:hover,
#MainForm11200 .submit button:hover {
 background: #C56E00 !important;
 transform: translateY(-1px) !important;
}

.widget_form.block_form_1 .content_wrapper {
 background: #fff !important;
 border-radius: 12px !important;
 padding: 40px 48px !important;
 box-shadow: 0 2px 20px rgba(0,0,0,0.07) !important;
 border: 1px solid #ECEFF1 !important;
}

.contact-lead-text,
#uraken-contact-lead {
 background: #F5F7FA !important;
 border-left: 4px solid #E67E00 !important;
 padding: 20px 24px !important;
 border-radius: 0 8px 8px 0 !important;
 margin: 24px 0 32px !important;
 font-size: 0.95rem !important;
 color: #37474F !important;
 line-height: 1.8 !important;
 max-width: 860px !important;
 margin-left: auto !important;
 margin-right: auto !important;
}

#uraken-trust-badges {
 display: flex !important;
 gap: 20px !important;
 justify-content: center !important;
 flex-wrap: wrap !important;
 margin: 32px auto !important;
 max-width: 860px !important;
 padding: 0 16px !important;
}

.uraken-trust-badge {
 display: flex !important;
 align-items: center !important;
 gap: 10px !important;
 background: #fff !important;
 border: 1.5px solid #E67E00 !important;
 border-radius: 50px !important;
 padding: 10px 20px !important;
 font-size: 0.88rem !important;
 font-weight: 600 !important;
 color: #37474F !important;
 white-space: nowrap !important;
}

.uraken-trust-badge .badge-icon {
 font-size: 1.2rem !important;
 color: #E67E00 !important;
}

#uraken-response-note {
 text-align: center !important;
 font-size: 0.85rem !important;
 color: #78909C !important;
 margin: 12px 0 24px !important;
}

.header_sns {
 opacity: 0.6 !important;
 max-width: 500px !important;
 margin: 0 auto !important;
}

.uraken-added-field {
 display: flex !important;
 align-items: flex-start !important;
 border-bottom: 1px solid #ECEFF1 !important;
 padding: 18px 0 !important;
 gap: 24px !important;
}

.uraken-added-field .field-label {
 flex: 0 0 200px !important;
 font-weight: 600 !important;
 font-size: 0.95rem !important;
 color: #37474F !important;
 padding-top: 10px !important;
}

.uraken-added-field .field-input {
 flex: 1 !important;
}

.uraken-added-field input {
 background: #fff !important;
 border: 1.5px solid #B0BEC5 !important;
 border-radius: 6px !important;
 padding: 12px 16px !important;
 font-size: 1rem !important;
 color: #263238 !important;
 width: 100% !important;
 box-sizing: border-box !important;
 font-family: 'Noto Sans JP', sans-serif !important;
 transition: border-color 0.2s, box-shadow 0.2s !important;
}

.uraken-added-field input:focus {
 border-color: #E67E00 !important;
 box-shadow: 0 0 0 3px rgba(230, 126, 0, 0.12) !important;
 outline: none !important;
}

.badge-optional {
 background: #90A4AE !important;
 color: #fff !important;
 font-size: 0.68rem !important;
 padding: 2px 7px !important;
 border-radius: 3px !important;
 margin-left: 8px !important;
 vertical-align: middle !important;
 font-weight: 700 !important;
}

.contact-page-header {
 text-align: center !important;
 margin-bottom: 40px !important;
}

@media (max-width: 768px) {
 #MainForm11200 dl {
 flex-direction: column !important;
 gap: 8px !important;
 }
 #MainForm11200 dt {
 flex: none !important;
 padding-top: 0 !important;
 }
 .widget_form.block_form_1 .content_wrapper {
 padding: 24px 20px !important;
 }
 .uraken-added-field {
 flex-direction: column !important;
 gap: 8px !important;
 }
 .uraken-added-field .field-label {
 flex: none !important;
 }
 #uraken-trust-badges {
 gap: 12px !important;
 }
}

/* contact page BtoB v1.0 */
.widget_form.block_form_1{max-width:860px!important;margin-left:auto!important;margin-right:auto!important}
#MainForm11200 dl{display:flex!important;align-items:flex-start!important;border-bottom:1px solid #ECEFF1!important;padding:18px 0!important;margin:0!important;gap:24px!important}
#MainForm11200 dt{flex:0 0 200px!important;font-weight:600!important;font-size:.95rem!important;color:#37474F!important;padding-top:10px!important;line-height:1.5!important}
#MainForm11200 dd{flex:1!important;margin:0!important}
#MainForm11200 input[type=text],#MainForm11200 input[type=email],#MainForm11200 input[type=tel],#MainForm11200 textarea{background:#fff!important;border:1.5px solid #B0BEC5!important;border-radius:6px!important;padding:12px 16px!important;font-size:1rem!important;color:#263238!important;width:100%!important;box-sizing:border-box!important;transition:border-color .2s,box-shadow .2s!important;font-family:'Noto Sans JP',sans-serif!important}
#MainForm11200 input[type=text]:focus,#MainForm11200 input[type=email]:focus,#MainForm11200 input[type=tel]:focus,#MainForm11200 textarea:focus{border-color:#E67E00!important;box-shadow:0 0 0 3px rgba(230,126,0,.12)!important;outline:none!important}
#MainForm11200 textarea{min-height:160px!important;resize:vertical!important}
#MainForm11200 .submit{text-align:center!important;padding:32px 0 0!important}
#MainForm11200 .submit input[type=button],#MainForm11200 .submit button,#MainForm11200 input[type=submit],#MainForm11200 button[type=submit]{background:#E67E00!important;color:#fff!important;border:none!important;border-radius:8px!important;padding:18px 64px!important;font-size:1.1rem!important;font-weight:700!important;letter-spacing:.1em!important;cursor:pointer!important;font-family:'Noto Sans JP',sans-serif!important;transition:background .2s,transform .1s!important;box-shadow:0 4px 16px rgba(230,126,0,.3)!important}
#MainForm11200 .submit input[type=button]:hover,#MainForm11200 .submit button:hover{background:#C56E00!important;transform:translateY(-1px)!important}
.widget_form.block_form_1 .content_wrapper{background:#fff!important;border-radius:12px!important;padding:40px 48px!important;box-shadow:0 2px 20px rgba(0,0,0,.07)!important;border:1px solid #ECEFF1!important}
.contact-lead-text,#uraken-contact-lead{background:#F5F7FA!important;border-left:4px solid #E67E00!important;padding:20px 24px!important;border-radius:0 8px 8px 0!important;margin:24px auto 32px!important;font-size:.95rem!important;color:#37474F!important;line-height:1.8!important;max-width:860px!important}
#uraken-trust-badges{display:flex!important;gap:20px!important;justify-content:center!important;flex-wrap:wrap!important;margin:32px auto!important;max-width:860px!important;padding:0 16px!important}
.uraken-trust-badge{display:flex!important;align-items:center!important;gap:10px!important;background:#fff!important;border:1.5px solid #E67E00!important;border-radius:50px!important;padding:10px 20px!important;font-size:.88rem!important;font-weight:600!important;color:#37474F!important;white-space:nowrap!important}
.uraken-trust-badge .badge-icon{font-size:1.2rem!important;color:#E67E00!important}
.uraken-added-field{display:flex!important;align-items:flex-start!important;border-bottom:1px solid #ECEFF1!important;padding:18px 0!important;gap:24px!important}
.uraken-added-field .field-label{flex:0 0 200px!important;font-weight:600!important;font-size:.95rem!important;color:#37474F!important;padding-top:10px!important}
.uraken-added-field .field-input{flex:1!important}
.uraken-added-field input{background:#fff!important;border:1.5px solid #B0BEC5!important;border-radius:6px!important;padding:12px 16px!important;font-size:1rem!important;color:#263238!important;width:100%!important;box-sizing:border-box!important;font-family:'Noto Sans JP',sans-serif!important;transition:border-color .2s,box-shadow .2s!important}
.uraken-added-field input:focus{border-color:#E67E00!important;box-shadow:0 0 0 3px rgba(230,126,0,.12)!important;outline:none!important}
.badge-required-tag{background:#E67E00!important;color:#fff!important;font-size:.7rem!important;padding:2px 7px!important;border-radius:3px!important;margin-left:8px!important;vertical-align:middle!important;font-weight:700!important}
.badge-optional{background:#90A4AE!important;color:#fff!important;font-size:.68rem!important;padding:2px 7px!important;border-radius:3px!important;margin-left:8px!important;vertical-align:middle!important;font-weight:700!important}
#uraken-response-note{text-align:center!important;font-size:.85rem!important;color:#78909C!important;margin:12px 0 24px!important}
@media(max-width:768px){#MainForm11200 dl{flex-direction:column!important;gap:8px!important}#MainForm11200 dt{flex:none!important;padding-top:0!important}.widget_form.block_form_1 .content_wrapper{padding:24px 20px!important}.uraken-added-field{flex-direction:column!important;gap:8px!important}.uraken-added-field .field-label{flex:none!important}#uraken-trust-badges{gap:12px!important}}


/* LINE登録ボタン背景色を白に変更 v3 */
.contents_btn01.block_button_2 a {
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #263238 !important;
  border: 2px solid #B0BEC5 !important;
  box-shadow: none !important;
}
.contents_btn01.block_button_2 a:hover {
  background: #F5F7FA !important;
  background-color: #F5F7FA !important;
  border-color: #546E7A !important;
}




/* BtoB仕様: CMS元不要セクション非表示 - 強制 */
[id*="nbp10613754"],
[id*="nbp10613787"],
[id*="nbp10620014"],
[id*="nbp6307596"],
[id*="nbp10614555"],
[id*="nbp10614890"],
[id*="nbp10620062"],
[id*="nbp10620405"],
#uraken-stats-banner {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  width: 0 !important;
  max-width: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  animation: none !important;
  transition: none !important;
  clip: rect(0,0,0,0) !important;
  clip-path: inset(100%) !important;
  position: absolute !important;
  left: -9999px !important;
}


/* === uraken-ensure-visible : ⑥ 全要素の表示を強制保証 (JSから移行) === */
.uk-anim,
section,
.composite_box01,
.contents_btn01,
.widget_shop01,
.inner_item,
.wrapper_item,
.content_wrapper {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}
