/* CSS Document */

.sp_none,
.slick-slide img.sp_none{display:none!important;}

.txt50sp{font-size:50%!important;}
.txt60sp{font-size:60%!important;}
.txt70sp{font-size:70%!important;}
.txt80sp{font-size:80%!important;}
.txt90sp{font-size:90%!important;}
.txt100sp{font-size:100%!important;}
.txt110sp{font-size:110%!important;}
.txt120sp{font-size:120%!important;}
.txt130sp{font-size:130%!important;}
.txt140sp{font-size:140%!important;}
.txt150sp{font-size:150%!important;}
.txt160sp{font-size:160%!important;}
.txt170sp{font-size:170%!important;}
.txt180sp{font-size:180%!important;}
.txt190sp{font-size:190%!important;}
.txt200sp{font-size:200%!important;}
.txt240sp{font-size:240%!important;}
.txt280sp{font-size:280%!important;}

.sp_mb0{margin-bottom:0!important;}
.sp_mb05{margin-bottom:5px!important;}
.sp_mb10{margin-bottom:10px!important;}
.sp_mb20{margin-bottom:20px!important;}
.sp_mb30{margin-bottom:30px!important;}
.sp_mb40{margin-bottom:40px!important;}
.sp_mb50{margin-bottom:50px!important;}

.sp_mt0{margin-top:0!important;}
.sp_mt10{margin-top:10px!important;}
.sp_mt20{margin-top:20px!important;}
.sp_mt30{margin-top:30px!important;}
.sp_mt40{margin-top:40px!important;}
.sp_mt50{margin-top:50px!important;}
.sp_mt60{margin-top:60px!important;}
.sp_mt80{margin-top:80px!important;}

.sp_ml0{margin-left:0!important;}
.sp_ml10{margin-left:10px!important;}

.sp_mr0{margin-right:0!important;}

.sp_lh160p{
	line-height:1.6;}

.t_align_left_sp{
	text-align:left!important;}
.t_align_center_sp{
	text-align:center!important;}

.align_center_sp{
	margin-left: auto;
	margin-right: auto;
}
	
.sp_w80{width:80%;}
.sp_w100{width:100%!important;}

.sp200px{
width: 200px;
}

.sp_mw450px{
    max-width: 450px;
}
.sp_mw_none{
    max-width: none;
}


.sp_block{
    display: block!important;
}
	
.sp_w100{
    width: 100%;
}

.fl_r_pic,
.fl_l_pic{
    margin-bottom: 30px;
}

.sp-column-reverse{
	flex-direction: column-reverse;
}

.section_padding{
	padding:55px 0 40px;
}

.page_top_main{
	height: 400px;
	background-attachment: inherit;
}


.anchor_point{
	padding-top:60px;
	margin-top:-60px;}

/*------------------------------*/
html{
    font-size: 57.5%;
}
body{
    line-height: 1.5;
    /*padding-top: 55px;*/
font-size:1.6rem!important;
	}



/*------------------------------*/
.toppage_menu_box_title {
    font-size: 18px;
    margin-bottom: 6px;
}

.header_title{
    width: 100%;
}
.header_title a {
    width: 100%;
    height: 65px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    top: auto;
    left: auto;
    padding-left: 20px;
    pointer-events: none;
}
.header_title a img {
    width: 150px;
    pointer-events: auto;
}

.header_logo_body {
    background: rgba(255,255,255,.5);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    text-align: center;
    position: relative;
    top: auto;
    right: auto;
    width: 100%;
    height: auto;
    padding: 14px 5%;
}

.header_logo {
    width: 200px;
    text-align: center;
    display: inline-block;
    margin: 0;
    vertical-align: bottom;
}
.header_logo a{
    height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.header_logo_ka{
    margin-left: 20px;
}

.header_logo_txt{
    margin-top: 0;
    font-size: 10px;
}

.top_main_txt_body {
    right: auto;
    top: auto;
    position: relative;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    display: block;
    margin-top: 15px;
}

.top_main_title {
    font-size: 20px;
}

.main_nav_toppage {
    display: none;
}

.top_main_img img {
    width: 100%;
    border-radius:  0;
}

.toppage_mes_section_title {
    position: relative;
    display: block;
    align-items: center;
    height: auto;
    top: auto;
    padding-bottom: 0;
}

.en_title {
    font-size: 30px;
    margin-bottom: 10px;
    text-align: center;
}

.toppage_mes_section:before {
    content: "";
    top: -150px;
    right: 0;
    position: absolute;
    height: calc(100% + 150px);
    width: 100%;
    border-radius: 0  ;
    z-index: 3;
}

.toppage_mes_section {
    z-index: 3;
    padding: 25px 0 50px;
}

.toppage_concept_section {
    margin: 25px 0 40px!important;
}

.toppage_concept_img {
    text-align: center;
}
.toppage_concept_img img{
    width: 400px;
}

.toppage_mov_txt_body {
    z-index: 4;
    position: relative;
    display: block;
    height: 100%;
    top: auto;
    padding-bottom: 50px;
    text-align: center;
}

.toppage_mov_img {
    text-align: center;
}
.toppage_mov_img img {
    width: 400px;
}

.toppage_mov_section {
    margin-top: 0!important;
    padding: 35px 0 40px;
    background-image: url(/common/img/toppage/mov_bg.jpg);
}

.toppage_mov_section:before {
    display: none;
}

.toppage_mov_txt_body {
    padding-bottom: 30px;
}

.footer_contact_body {
    padding: 60px 0;
}

.footer_link_btn_txt_02 {
    font-size: 40px;
}

.header_title_body{
    width: 100%;
    position: relative;
}

.header_open_btn{
    z-index: 33333;
    cursor: pointer;
    position: absolute;
    right: 30px;
    top: 0;}

.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .7s;
	box-sizing: border-box;
}
.menu-trigger {
    position: absolute;
    left: 50%;
    margin-left: -13px;
    top: 22px;
    width: 26px;
    height: 22px;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #333;
	border-radius: 1px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 10px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}

.menu-trigger > * {
	z-index:2;
}


.uk-offcanvas-page .menu-trigger span:nth-of-type(1) {
	-webkit-transform: translateY(10px) rotate(-45deg);
	transform: translateY(10px) rotate(-45deg);
}
.uk-offcanvas-page .menu-trigger span:nth-of-type(2) {
	opacity: 0;
}
.uk-offcanvas-page .menu-trigger span:nth-of-type(3) {
	-webkit-transform: translateY(-10px) rotate(45deg);
	transform: translateY(-10px) rotate(45deg);
}

#main_menu .uk-offcanvas-bar {
    width: 100%;
    background: #fff;
    padding-top: 65px;}

.uk-offcanvas-bar {
}

.subpage_section_subtitle {
    font-size: 18px;
}
.subpage_section_title {
    font-size: 30px;
}
.subpage_section_title br {
    display: none;
}

.main_nav_subpage{
    display: none;
}


.subpage_body .header_logo_body{
    display: none;
}

.subpage_section_padding {
    padding: 35px 0 45px!important;
}

.subpage_main h1 {
    font-size: 50px;
    text-align: center;
}

.subpage_main {
    padding: 80px 0;
    overflow: hidden;
}

.subpage_main_img img { 
    height: auto;
    width: 700px;
    max-width: none;
    margin-top: -20px;
}

.subpage_main_img {
    margin-top: -80px;
}

#menu .subpage_main_img img {
    opacity: .8;
}

.menu_01_grid_box_title {
    font-size: 20px;
    padding-left: 40px;
}
.menu_01_grid_box_title:before {
    font-size: 60px;
}

.subpage_main_h1_menu_small{
    text-align: center;
    margin-top: 30px;
    margin-bottom: -20px;
    font-size: 18px;}


.menu_02_flow_box:nth-child(n+2) .menu_02_flow_box_img:after{
    left: -12%;
    font-size: 40px;

}


.menu_02_flow_box_title{
    line-height: 1.2;
    margin-top: 10px;
}
.menu_02_flow_box_title:before {
    font-size: 50px;
    vertical-align: -.2em;
    margin-right: 0;
    display: block;
}

.menu_02_flow_txt {
    margin-top: 20px;
    font-size: 1.2em;
}

.footer_contact_flex_box_menu_02 {
    width: 100%!important;
    max-width: none;
}

.menu_02_btn_txt_01{
    font-size: 18px;
}
.menu_02_btn_txt_02{
    font-size: 30px;
}

.footer_contact_flex_box_menu_02 .footer_link_btn {
    padding: 15px 20px 10px;
}


.tantou_name{
    font-size: 1.1em;
}

.form_jouhou_tbl td .uk-form-width-large {
    width: 320px;
}

.form_jouhou_tbl th, .form_jouhou_tbl td {
    display: block;
    border-bottom: none;
    padding: 0;
}
.form_jouhou_tbl th{
    padding-top: 20px;
    margin-bottom: 10px;
}
.form_jouhou_tbl th br{
    display: none;
}
.form_jouhou_tbl td {
    border-bottom: 1px dashed #ccc;
    padding-bottom: 20px;
}

.header_logo_pms img {
    width: 90px;
}

