@charset "utf-8";

/*body--------------------------------------------------------------*/

body
{
	margin			: 0 auto;
	padding			: 0;
	font			: 16px/1.6 'Noto Sans JP',Meiryo, 'メイリオ', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', 'Lucida Grande', 'Lucida Sans Unicode', sans-serif;
	color			: #444;
	background		: #FFF;
	text-align		: center;
	 	 font-feature-settings : "palt" 1;
	-webkit-text-size-adjust		: 100%;
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}


.en
{
  	font-family: 'Josefin Sans', sans-serif;
  	 font-feature-settings : "palt" 1;
}
.serif_jp
{
 	font-family : "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}



/* 
Josefin Sans [ font-weight:300,400,700]
Noto Sans [ font-weight:100,400,700]
*/






/*Opera用*/
html:first-child body
{
	font			: 16px/1.5  'Noto Sans JP',Meiryo, 'メイリオ', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', 'Lucida Grande', 'Lucida Sans Unicode', sans-serif;
}

div,form,map
{
	margin			: 0;
	padding			: 0;
}

p
{
	margin-top      : 0;
	padding         : 0;
	letter-spacing: .01em;
}

img
{
	max-width 		: 100%;
	height 			: auto; 
	border			: 0;
	vertical-align  : top;
	image-rendering: -webkit-optimize-contrast;
}
em
{
	font-style 		: normal;
}

*
{
	box-sizing: border-box;
}

/*システムが絡む場合、GoogleMapを使用する場合は消す*/
table
{
	margin-left		: auto;
	margin-right	: auto;
}

#side p,#side h1,#side #side h2,#side h3,
#header p,#header h1,#header h2,#header h3,
#footer p,#footer h1,#footer h2,#footer h3
{
	margin			: 0;
	font			: normal 1em  'Noto Sans JP',Meiryo, 'メイリオ', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', 'Lucida Grande', 'Lucida Sans Unicode', sans-serif;
	text-align		: left;
}

/*link--------------------------------------------------------------*/

a:link,
a:visited
{
	color           : #4D82C4; 
	text-decoration : underline;
}

a:hover,
a:active
{
	color           : #4D82C4; 
	text-decoration : none;
}







/*layout------------------------------------------------------------*/

#wrapper
{
	width			: 100%;
	margin			: 0;
	padding			: 0;
}





/*▼header------------------------------------------------------------*/

#pc_header
{
	width			: 100%;
	text-align		: left;
	position		: fixed;
	top				: 0px;
	left			: 0px;
	background		: #FFF;
	z-index			: 1000;


}
#pc_header *
{
	transition: all 0.5s ease;

}


#pc_header a
{
	text-decoration 	: none;
	color 				: #444; 
}


#pc_header .header_inner
{
	max-width 		: 1200px;
	width 			: 95%; 
	margin			: 0 auto;
	background		: #FFF;
		display 	: flex;
 	display 	: -ms-flexbox;
 	flex-flow 		: row nowrap;
 	-ms-flex-flow 	: row nowrap;
}
#pc_header .h_logo
{
	width 			: 276px;
	padding 		: 20px 0px; /*高さ*/
}
#pc_header .global_nav ul,
#pc_header .global_nav ul li
{
	margin 			: 0px;
	padding 		: 0px; 
	list-style 		: none;
}
#pc_header .global_nav
{
	border-right 	: 1px #CCC solid;
	padding-right 	: 15px;
	margin-right 	: 20px;
	margin-left 	: auto;
	display 	: flex;
 	display 	: -ms-flexbox;
	-webkit-box-align:center;
    -ms-flex-align:center;
        align-items:center;
}

#pc_header .global_nav ul
{
	display 	: flex;
 	display 	: -ms-flexbox;
 	flex-flow 		: row nowrap;
 	-ms-flex-flow 	: row nowrap;	
}
#pc_header .global_nav > ul li a,
#pc_header .global_nav > ul li .sub_nav_btn
{
	display 		: block ;
	padding 		: .3em .7em .3em;
	background 		: url("../images/common/line/02.gif") left top repeat-y;
	font-size 		: 14px; 
}
#pc_header .global_nav > ul li
{
	position: relative;
	padding 			: 31px 0px;/*高さ*/ 
	cursor 				: pointer;
}
#pc_header .global_nav > ul li:before
{
	content 		: "";
	display 		: block;
	position: absolute;
	background 		: #004d94;
	height 			: 5px;
	width 			: 0%; 
	bottom 			: 0px;
	left 			: 0px;
	right 			: 0px;
	margin 			: 0 auto;
	opacity 		: 0px;
	width 			: 0px;
	transition: all 0.5s ease;

}
#pc_header .global_nav > ul li:hover:before,
#pc_header .global_nav ul li.open:before
{
	width 			: 100%;
	opacity 		: 1; 
}
#pc_header .global_nav > ul li:first-child a
{
	background 		: none; 
}
#pc_header .global_nav ul li .sub_nav
{
	position 		: fixed;
	background 		: rgba(238,238,238,.9);
	width 			: 100%;
	top 			: 91px;
	left 			: 0px;
	visibility 		: hidden;
	opacity 		: 0; 
	transition: all 0.3s ease;
	overflow: hidden;
  -webkit-transform: scaleY(0);
  -ms-transform: scaleY(0);
  transform: scaleY(0);
  z-index: 0;
  transform-origin:center top;
  border-bottom 		: 1px solid #FFF; 
}
#pc_header .global_nav ul li.open .sub_nav
{
	visibility 		: visible;
	opacity 		: 1;
  -webkit-transform: scaleY(1);
  -ms-transform: scaleY(1);
  transform: scaleY(1);
}
#pc_header.fix_top .global_nav ul li .sub_nav
{
	top 			: 76px;
}

#pc_header .sub_nav_inner
{
 	max-width 		: 1200px;
    width 			: 95%;
	padding-right 	: 60px; 
    margin 			: 0 auto;
		position: relative;
}

#pc_header .sub_nav ul
{
 	flex-flow 		: row wrap;
 	-ms-flex-flow 	: row wrap;
	-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;

}


#pc_header .sub_nav .sub_nav_close
{
	position 		: absolute;
	right 			: 0px;
	bottom 			: 0px;
	padding 		:0px;
	height 			: 100%; 
	background: none;
	border-left: 1px #CCC solid;
	border-right: 1px #CCC solid;
	width 			: 80px;
		display 	: flex;
 	display 	: -ms-flexbox;
 	flex-flow 		: column nowrap;
 	-ms-flex-flow 	: column nowrap;
	-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
		color 		:#004d94;
-webkit-box-align:center;
    -ms-flex-align:center;
        align-items:center;	
}
#pc_header .sub_nav .sub_nav_close:hover
{
	background 			: #EEE; 
}
#pc_header .sub_nav .sub_nav_close .en
{
	padding 		: 0px;
	background: none;
	font-weight: 700;
}
#pc_header .sub_nav .sub_nav_close .fas
{
	font-size 		: 20px; 
}

#pc_header .h_tel
{
	margin-right 	: 20px;
	font-size 		: 28px;
	color 			: #004d94;
	display 	: flex;
 	display 	: -ms-flexbox;
	-webkit-box-align:center;
    -ms-flex-align:center;
        align-items:center;
	
}
#pc_header .h_tel a
{
	font-weight 	: 300; 
	color 			: #004d94;
}
#pc_header .h_tel a .num
{
	font-weight 	: 400; 
}
#pc_header .h_contact a
{
	background: #004d94 url("../images/common/icon/arr_botw.svg") bottom 10px left 50%/ 15px auto no-repeat;
	color 		: #FFF;
	display: block;
	padding 		: 25px 25px 30px;/*高さ*/
	text-align: center;
	line-height 	: 1.0; 
}
#pc_header .h_contact a:hover
{
	background: #004d94 url("../images/common/icon/arr_botw.svg") bottom 5px left 50%/ 15px auto no-repeat;
	opacity 		: .7; 
}

#pc_header .h_contact a .jp
{
	display: block;
	font-size: 16px;
	margin-bottom 	: 5px; 
}
#pc_header .h_contact a .en
{
	font-size 		: 12px;
}

/*スクロール時のheader可変*/


#pc_header.fix_top
{
box-shadow:rgba(0, 0, 0, 0.0470588) 0px 0px 1px 3px;
}
#pc_header.fix_top  .h_logo
{
	padding-top 	: 12px;
	padding-bottom 	: 12px; 
}
#pc_header.fix_top .global_nav > ul li
{
	padding-top 	: 22px;
	padding-bottom 	: 22px; 
}
#pc_header.fix_top .h_contact a
{
	padding-top 	: 17px;
	padding-bottom 	: 23px; 
}
#pc_header .h_contact a .jp
{
	margin-bottom 	: 2px; 
}


#sp_header
{
	display				: none;
}


/*▼main_catch------------------------------------------------------------*/

#main_catch
{
	background: #017ddd url("../images/common/base/main_bg.jpg") top center no-repeat;
	padding-top 	: 89px;
	position 		: relative;
	overflow 		: hidden;
}
#main_catch:before
{
	content 		: "";
	height 			: 15px;
	width 			: 100%;
	display 		: block;
	position 		: absolute;
	background 		: url("../images/common/base/des_bg01.gif") 0 0 repeat;
	bottom 			: 0px;
	left 			: 0px;
	z-index 		: 100; 
}


#main_catch .main_catch_inner
{
	max-width 			: 1200px;
	width 				: 95%;
	margin 				: 0 auto; 
	position 			: relative;

}
#main_catch .main_catch_inner  .catch_cont
{
	padding 			: 7% 53% 8% 60px;
	margin 				: 0 auto; 
}
#main_catch .catch_cont .catch_title
{
	margin 				: 0px;
	padding 			: 0px;
	font-weight 		: normal;
	color 				: #FFF;
	line-height 		: 1.0; 
	margin-bottom 		: 30px; 
}
#main_catch .catch_cont .catch_title .en
{
	font-weight 		: 300;
	display: block;
	font-size 			: 18px;
	margin-bottom 		: 15px; 
}

#main_catch.mov .catch_cont .catch_title .en
{
  -webkit-animation 	: fade 1s ease-out 1.5s 1 forwards;
  animation 			: fade 1s ease-out 1.5s 1 forwards;
  opacity 				: 0;
}

#main_catch .catch_cont .catch_title .jp
{
	font-size 			:  68px;
	font-weight 		: 100;
}
#main_catch .catch_cont .catch_title .jp span
{
	display 			: block;
}

#main_catch.mov .catch_cont .catch_title .jp
{
  -webkit-animation 	: fadeTextEf 2s ease-out 1.5s 1 forwards;
  animation 			: fadeTextEf 2s ease-out 1.5s 1 forwards;

   opacity 				: 0;
  display: block;
}



#main_catch.mov .app_link
{
  -webkit-animation 	: fadeBottom 0.8s ease-out 2.5s 1 forwards;
  animation 			: fadeBottom 0.8s ease-out 2.5s 1 forwards;
   opacity 				: 0;
  transform: translateY(-20%);
  display: block;
}




#main_catch .main_catch_inner .catch_img
{
 	width 				: 53%;
	position 			: absolute;
	right 				: 0px;
	bottom 				: 0px; 
}
#main_catch .main_catch_inner  .catch_img .staff_img01
{
	width 		 		: 74%; 
	padding-left 		: 2%;
	position: relative;
	z-index: 10;
	
}

#main_catch.mov .main_catch_inner  .catch_img .staff_img01
{
  -webkit-animation 	: ani02 1s ease-out 0.4s 1 forwards;
  animation 			: ani02 1s ease-out 0.4s 1 forwards;
	opacity 			: 0;
}
@keyframes ani02 {
  100% {
	opacity 			: 1;
  }
}
@-webkit-keyframes ani02 {
  100% {
	opacity 			: 1;

  }
}

#main_catch .main_catch_inner  .catch_img .staff_img02
{
	position 			: absolute;
	right 				: 0px;
	bottom 				: 0px; 
	width 				: 39%;
	z-index 			: 150;
	opacity 			: 0;
  transform: translateX(-20%);
}


#main_catch.mov .main_catch_inner .catch_img .staff_img02
{
  -webkit-animation 	: ani01 1s ease-out 0.1s 1 forwards;
  animation 			: ani01 1s ease-out 0.1s 1 forwards;
}

@keyframes ani01 {
  100% {
	opacity 			: 1;
  transform: translateX(0%);
  }
}
@-webkit-keyframes ani01 {
  100% {
	opacity 			: 1;
  transform: translateX(0%);
  }
}



#main_catch .main_catch_inner  .catch_img .anv_icon
{
	position 			: absolute;
	right 				: 0px;
	bottom 				: 10%; 
	width 				: 25%;
	z-index 			: 200; 
}
#main_catch.mov .main_catch_inner  .catch_img .anv_icon
{
  -webkit-animation 	: fade 1s ease-out 3s 1 forwards;
  animation 			: fade 1s ease-out 3s 1 forwards;
   opacity 				: 0;
}
#main_catch .main_catch_inner  .catch_img .anv_icon img
{
	width 				: 100%;
	height 				: auto;

}
/*
#main_catch .main_catch_inner  .catch_img .anv_icon:before
{
	position 			: absolute;
	content 			: "";
	width 				: 100%;
	height 				: 100%;
	border 				: 1px #FFF solid;
	border-radius 		: 50%;
}

#main_catch.mov .main_catch_inner  .catch_img .anv_icon:before
{
  -webkit-animation 	: anvani01 2s ease-out 3.3s 1 forwards;
  animation 			: anvani01 2s ease-out 3.3s 1 forwards;
  transform: scale(0);
  opacity: 1;
}

@keyframes anvani01 {
  100% {
  transform: scale(2);
  opacity: 0;
  }
}
@-webkit-keyframes anvani01 {
  100% {
  transform: scale(2);
  opacity: 0;
  }
}
*/

#main_catch .main_catch_inner .catch_cont .app_link a
{
	display 			: block;
	padding 			: 25px 50px;
	background 			: #FFF url("../images/common/icon/arr_right.svg") right 20px top 50% / 20px auto no-repeat;
	border-radius 		: 3px;
	text-decoration: none;
	font-weight: 400;
	font-size 			: 23px;
	color 				: #004d94; 
	position 			: relative;
	transition: all 0.5s ease;

}
#main_catch .main_catch_inner .catch_cont .app_link a:hover
{
	opacity 			: .8;
	background 			: #FFF url("../images/common/icon/arr_right.svg") right 15px top 50% / 20px auto no-repeat;
}

#main_catch .main_catch_inner .catch_cont .app_link a em
{
	font-style 			: normal;
	font-weight 		: bold; 
}
#main_catch .main_catch_inner .catch_cont .app_link .free_icon
{
	background 			: url("../images/common/base/free_bg.svg") 0 0/cover no-repeat;
	position 			: absolute;
	width 				: 91px;
	height 				: 75px;
	top 				: -15%;
	left 				: 3px;
	display 	: flex;
 	display 	: -ms-flexbox;
	-webkit-box-align:center;
    -ms-flex-align:center;
        align-items:center;
	padding-left 		: 15px;
	line-height:1.0;
}
#main_catch .main_catch_inner .catch_cont .app_link .free_icon em
{
	font-style 			: normal;
	color 				: #FFF;
	font-size 			: 24px;
	font-weight 		: 700;
}




/*▼main------------------------------------------------------------*/
#main
{
	width 			: 100%; 
}
#wp_main
{
	width 			: 100%; 
}
#wp_main .section_inner,
#tinymce .section_inner
{
	text-align 		: left;
	padding-left 	: 25px;
	padding-right 	: 25px; 
}









/*▼footer------------------------------------------------------------*/

#footer
{
	clear			: both;
	width			: 100%;
	background		: #fff;
	box-shadow: 5px 1px 19px -8px rgba(0, 0, 0, 0.33);
}
#footer .footer_area01
{
	padding 		: 0px 0px 20px;
}

#footer .footer_inner
{
	max-width 		: 1200px;
	width 			: 90%;
	margin 			: 0 auto; 
}
#footer .footer_area01 .footer_inner
{
		display 	: flex;
 	display 	: -ms-flexbox;
 	flex-flow 		: row nowrap;
 	-ms-flex-flow 	: row nowrap;
	
}
#footer .footer_area01 .ft_logo
{
	width 		: 276px;
	display 	: flex;
 	display 	: -ms-flexbox;
	-webkit-box-align:center;
    -ms-flex-align:center;
        align-items:center;
}
#footer .footer_area01 .ft_address
{
	border-left 	: 1px #CCC solid;
	padding 		: 40px 0px 40px 50px;
	margin-left 	: 50px;
	text-align 		: left;
}
#footer .footer_area01 .ft_address a.map_link
{
	display: inline-block;
	margin-left 	: .5em; 
}
#footer .footer_area01 .ft_address a.map_link .fas
{
	margin-right 	: .3em; 
}





#footer .footer_area01 .ft_address .dis_inblock
{
	margin-right 	: 1em; 
}
#footer .footer_area02
{
	background 		: #f4f4f3;
	padding 		: 50px 0px 50px; 
}
#footer .footer_area02 .footer_inner
{
		display 	: flex;
 	display 	: -ms-flexbox;
 	flex-flow 		: row nowrap;
 	-ms-flex-flow 	: row nowrap;
-webkit-box-pack: justify;
    -ms-flex-pack: justify;
        justify-content: space-between;
}
#footer .footer_area02 .ft_nav,
#footer .footer_area02 .ft_nav dt,
#footer .footer_area02 .ft_nav dd
{
	margin 		 	: 0px;
	padding 		: 0px;
	list-style 		: none;
}
#footer .footer_area02 .ft_nav a
{
	color 			: #444;
}

#footer .footer_area02 .ft_nav
{
	width 			: 48%;
	text-align 		: left;
		display 	: flex;
 	display 	: -ms-flexbox;
 	flex-flow 		: row wrap;
 	-ms-flex-flow 	: row wrap;
-webkit-box-align:start;
    -ms-flex-align:start;
        align-items:flex-start;
	-ms-flex-line-pack:start;
    align-content:flex-start
	
}
#footer .footer_area02 .ft_nav dt
{
	border-radius 		: 3px;
	background 		 	: #FFF;
	padding 			: 10px 20px;
	box-shadow 			: 5px 1px 19px -8px rgba(0, 0, 0, 0.33);
	margin-bottom 		: 20px;
	overflow 			: hidden;
	position 			: relative;
	width 				: 100%; 
}
#footer .footer_area02 .ft_nav dt .icon
{
	display 			: block;
	padding-left 		: 18px;
	position 			: relative;
	color 				: #358de1; 
	font-weight 		: 700; 
}
#footer .footer_area02 .ft_nav dt .icon:before
{
	content 			: "";
	display 			: block;
	width 				: 5px;
	height 				: 5px;
	border-radius 		: 50%;
	border 				: 4px solid #358de1;
	left 				: 0px;
	top 				: 0px;
	bottom 				: 0px;
	margin 				: auto 0px;
	position 			: absolute;
}

#footer .footer_area02 .ft_nav dt:after
{
	content 			: "";
	display 			: block;
	width 				: 45%;
	position 			: absolute;
	height 				: 100%;
	right 				: 0px;
	top 				: 0px;
	background 			: url("../images/common/base/des_bg02.gif") right top repeat;
}
#footer .footer_area02 .ft_nav dd
{
	margin-left 			: 1.5em;
	margin-bottom 			: 15px; 
}
#footer .footer_area02 .ft_nav dd a
{
	display 				: block;
	padding-left 			: 15px;
	background: url("../images/common/icon/arr_right_light.svg") left 0px top 50% / 8px auto no-repeat;
}
#footer small
{
	display 			: block;
	max-width 			: 1200px;
	width 				: 90%;
	margin 				: 0 auto;
	padding 			: 30px 0px 30px; 
}


/*1150以下の指定（pc小）*/

@media screen and (max-width: 1150px) 
{

#pc_header .global_nav
{
	padding-right 		: 10px;
	margin-right 		: 15px; 
}
#pc_header .h_tel
{
	margin-right 		: 15px; 
}
#pc_header .h_contact a
{
	padding-left 		: 15px;
	padding-right 		: 15px; 
}
#pc_header .global_nav ul li a,
#pc_header .global_nav ul li span,
#pc_header .global_nav ul li .sub_nav_btn
{
	font-size 			: 12px; 
}
#main_catch .main_catch_inner .catch_cont .app_link a
{
	font-size 			: 1.8vw; 
}
#main_catch .catch_cont .catch_title .en
{
	font-size 			: 1.5vw; 
}

#main_catch .catch_cont .catch_title .jp
{
	font-size 			: 6vw; 
}
#main_catch .main_catch_inner .catch_cont .app_link a
{
    padding 			: 20px 50px;
}
#main_catch .main_catch_inner .catch_cont .app_link .free_icon
{
	left 				: -15px; 
}
#main_catch .main_catch_inner .catch_cont
{
    margin 				: 0 auto;
}



}



/*1024以下の指定（タブレット）*/

@media screen and (max-width: 1024px) {

body
{
	min-width 		: 100%;
}


/*▼header------------------------------------------------------------*/

#pc_header
{
	display			: none;
}

#sp_header
{
	display			: block;
}
#sp_header .header_inner
{
	width 			: 100%;
    height 			: 70px;
    text-align 		: left;
    position 		: fixed;
    top 			: 0px;
    left 			: 0px;
    background 		: #FFF;
    z-index 		: 9000;
	box-shadow 		: rgba(0, 0, 0, 0.0470588) 0px 0px 1px 3px;
}
#sp_header .header_inner .h_logo
{
	position 		: absolute;
	top 			: 50%;
	left 			: 15px;
	-webkit-transform		: translateY(-50%) translateX(0%);
	transform				: translateY(-50%) translateX(0%);
	width 			: 220px; 
}
/*▼ハンバーガーメニュー--------------------------------------------------------*/

.hmenu
{
	background		: rgba(240,240,240,1);
	padding			: calc(70px + 4%) 4% 4%;
	margin			: 0;
	overflow		: auto;
 	-webkit-overflow-scrolling : touch;
	width			: 100%;
	height			: 100vh;
	height 			: 100dvh; 
	box-sizing		: border-box;
}
.hmenu a
{
	text-decoration: none;
}
.menu
{
    position			: fixed; 
    top					: 0;
    left				: 0;
    width				: 100%;
    height				: 100%;
	-webkit-transition	: all 0.5s ease;
    -moz-transition		: all 0.5s ease;
    -o-transition		: all 0.5s ease;
	transition			: all 0.5s ease;
    visibility			: hidden;
    opacity				: 0;
	text-align 			: left
}
.md_open .menu
{
    visibility			: visible;
    opacity				: 1;
	z-index				: 2000;
}


.menu-btn
{
	position	: absolute;
	right		: 15px;
	top			: 50%;
    width		: 38px;
    height		: 30px;
    cursor		: pointer;
	box-sizing	: border-box;
    z-index		: 2000;
	-webkit-transform		: translateY(-50%) translateX(0%);
	transform				: translateY(-50%) translateX(0%);
}
.menu-btn img
{
	position	: absolute;
	bottom		: 6px;
	left		: 8px;
	width		: 30px;
	height		: auto;
}

.menu-trigger,
.menu-trigger span
{
	display					: -moz-inline-box;
	display					: inline-block;
	/display				: inline;
	/zoom					: 1;
	vertical-align 			: top;
	-webkit-transition		: all 0.5s ease;
    -moz-transition			: all 0.5s ease;
    -o-transition			: all 0.5s ease;
	transition				: all 0.5s ease;
	box-sizing				: border-box;
}
.menu-trigger
{
	position		: relative;
	display 		: block;
	height			: 100%;
}
.menu-trigger span
{
	position		: absolute;
	left			: 0;
	width			: 100%;
	height			: 3px;
	background 		: #004d94;
}
.menu-trigger span:nth-of-type(1)
{
	top			: 0;
}
.menu-trigger span:nth-of-type(2)
{
	top			: 48%;
}
.menu-trigger span:nth-of-type(3)
{
	bottom		: 0;
}


/*ボタン開いた時*/

.md_open .menu-trigger span:nth-of-type(1)
{
	-webkit-transform	: translateY(8px) rotate(-45deg);
	-moz-transform		: translateY(8px) rotate(-45deg);
	-o-transform		: translateY(8px) rotate(-45deg);
	transform			: translateY(8px) rotate(-45deg);
}
.md_open .menu-trigger span:nth-of-type(2)
{
	opacity				: 0;
}
.md_open .menu-trigger span:nth-of-type(3)
{
	-webkit-transform	: translateY(-18px) rotate(45deg);
	-moz-transform		: translateY(-18px) rotate(45deg);
	-o-transform		: translateY(-18px) rotate(45deg);
	transform			: translateY(-18px) rotate(45deg);
}
.md_open .menu-trigger
{
	height			: 30px;
}
.sacbox
{
	display 		:none;
}
body.md_open
{
	overflow 		: hidden;
	height 			: 100%;
}
.hmenu .hm_title
{
	padding			: 12px 0;
	color			: #fff;
	font-size		: 22px;
	font-weight		: bold;
}
.hmenu ul,
.hmenu ul li
{
	margin			: 0;
	padding			: 0;
	list-style-type	: none;
}
.hmenu ul li
{
	border-bottom	: 1px solid #EEE;
	width 			: 50%;
}



.hmenu ul li:last-child
{
	border-bottom: none;
}

.hmenu ul
{
		display 	: flex;
 	display 	: -ms-flexbox;
 	flex-flow 		: row wrap;
 	-ms-flex-flow 	: row wrap;
	
}
.hmenu ul li a
{
	background		: url("../images/common/icon/arr_right_light.svg") right 15px top 50%/10px auto no-repeat;
	padding			: 15px 15px 15px 15px;
	display			: block;
	color 			: #444;
}
.hmenu .nav_box
{
	background 		: #FFF;
	border-radius 	: 3px;
	margin-bottom 	: 15px;
	box-shadow: 5px 1px 19px -8px rgba(0, 0, 0, 0.33);

}

.hmenu .nav_box .nav_box_title
{
	padding 		: 15px 15px;
	border-bottom 	: 1px #EEE solid; 
}
.hmenu .nav_box .nav_box_title .en
{
	font-weight 	: bold;
	color 			: #007adc;
		display 	: flex;
 	display 	: -ms-flexbox;
 	flex-flow 		: row nowrap;
 	-ms-flex-flow 	: row nowrap;
	-webkit-box-align:center;
    -ms-flex-align:center;
        align-items:center;
}
.hmenu .nav_box .nav_box_title .en:before
{
	content 			: "";
	width 				: 5px;
	height 				: 5px;
	border 				: 4px solid #007adc;
	display 			: inline-block;
	margin-right 		: .3em;
	border-radius 		: 50%; 
}
.hm_contact_area
{
		display 	: flex;
 	display 	: -ms-flexbox;
 	flex-flow 		: row wrap;
 	-ms-flex-flow 	: row wrap;
}
.hm_contact_area > div
{
	width 			: 50%;
	padding 		: 10px 5%;
	text-align 		: center;
}
.hm_contact_area .hm_tel
{
	font-size 		: 5vw;
	font-weight 	: 100;
}
.hm_contact_area .hm_tel a
{
	color 			: #004d94;
}
.hm_contact_area .hm_tel .num
{
	font-weight 	: 400;  
}
.hm_contact a
{
	width 			: 100%;
	background 		: #004d94;
	color 			: #FFF;
	line-height 	: 1.0; 
	display: block;
	padding 		: 10px;
	text-align 		: center;
	border-radius 	: 3px; 
}
.hm_contact a .jp
{
	display 		: block;
	margin-bottom 	: 5px; 
}

.hm_contact a .en
{
	font-weight 	: 400; 
}



#main
{
	width			: 100%;
	float			: none;
}



/*▼main_catch------------------------------------------------------------*/
#main_catch
{
	padding-top 		: 70px; 
}



#main_catch .main_catch_inner .catch_img
{
	position 				: relative;
	width 					: 85%;
	left 					: 0px;
	right 					: 0px;
	margin 					: 0 auto; 
}
#main_catch .main_catch_inner .catch_cont
{
	padding 				: 70px 60px 0;  
}
#main_catch.mov .catch_cont .catch_title .jp
{
		display 	: flex;
 	display 	: -ms-flexbox;
 	flex-flow 		: row nowrap;
 	-ms-flex-flow 	: row nowrap;
	-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
		font-size 		: 8vw; 
}
#main_catch .catch_cont .catch_title
{
	margin-bottom 		: 80px; 
}

#main_catch.mov .catch_cont .catch_title .en
{
	font-size 			: 2.5vw; 
}
#main_catch.mov .app_link
{
	position: absolute;
	bottom 		: 60px;
	z-index 		: 500;
	width 			: 85%;
	left 			: 0px;
	right 			: 0px;
	margin 			: 0 auto; 
}
#main_catch .main_catch_inner .catch_img .staff_img01
{
	width 			: 77%; 
}
#main_catch .main_catch_inner .catch_cont .app_link a
{
	font-size 		: 3.2vw; 
}
#main_catch .main_catch_inner .catch_img .anv_icon
{
    position: absolute;
    right: -8%;
    bottom: 42%;
}

#wp_main .section_inner,
#tinymce .section_inner
{
	text-align 		: left;
	padding-left 	: 2.5%;
	padding-right 	: 2.5%; 
}




/*▼footer------------------------------------------------------------*/

#footer_inner
{
	width			: 90%;
	padding 		: 30px 0 40px;
}
#footer .footer_area01 .ft_address a.map_link
{
	margin-left 	: 0px; 
}


}

/*767以下の指定（スマホ横)*/
@media screen and (max-width: 767px) {

#sp_header .header_inner
{
	height 					: 60px; 
}
.menu-btn
{
	height 					: 25px; 
}

.menu-trigger span:nth-of-type(2)
{
	top			: 45%;
}

.hmenu ul li
{
	width 				: 100%; 
}
.hm_contact_area
{
	display: block;
}
.hm_contact_area > div
{
	width 				: 100%;
	padding 			: 0px;
	margin-bottom 		: 10px; 
}
.hm_contact_area .hm_tel
{
	font-size 			: 10vw; 
}

#main_catch
{
	overflow: hidden;
}
#main_catch .main_catch_inner
{
	width 			: 100%; 
}

#main_catch .main_catch_inner .catch_img
{
	width 				: 100%; 
}
#main_catch .main_catch_inner .catch_img .staff_img01
{
	width 				: 77%;
	padding-left 		: 0px; 
}
#main_catch .main_catch_inner .catch_img .staff_img02
{
	width 		 		: 41%; 
}


#main_catch
{
	padding-top 			: 60px; 
	background-size 		: 200% auto;
	background-position 	: top 50px left 50%; 
}
#main_catch .catch_cont .catch_title
{
	margin-bottom 			: 30px; 
}
#main_catch.mov .catch_cont .catch_title .jp
{
	font-size 			: 13vw;
	display: block;
}
#main_catch.mov .catch_cont .catch_title .en
{
	font-size 			: 3.5vw; 
}

#main_catch .main_catch_inner .catch_cont
{
    padding: 50px 30px 0;
}
#main_catch.mov .app_link
{
	bottom 			: 30px;
	width 			: 90%;
}
#main_catch:before
{
	height 			: 10px; 
}
#main_catch .main_catch_inner .catch_img .anv_icon
{
	right 			: 0px;
	width 			: 22%; 
}
#main_catch .main_catch_inner .catch_cont .app_link a
{
	background-size 		: 13px auto;
	background-position 	: right 13px top 50%;
	font-size 				: 1.125rem; 
    padding 				:  15px 30px 15px 50px;
}
#main_catch .main_catch_inner .catch_cont .app_link .free_icon
{
	top 					: -15px;
	left 					: -10px;
	font-size 				: 18px;
 	width 					: 75px;
    height 					: 62px;
	padding-left 			: 11px; 
}
#main_catch .main_catch_inner .catch_cont .app_link .free_icon em
{
	font-size 				: 20px; 
}





#footer .footer_area01 .footer_inner
{
	display 				: block;
	padding 				: 30px 10px; 
}
#footer .footer_area01 .ft_address
{
	padding 			: 0px;
	border-left 		: none;
	margin-left 		: 0px; 
}
#footer .footer_area01 .ft_logo
{
	width 				: 220px;
	margin 				: 0 auto;
}
#footer .footer_area01 .ft_address
{
	border-top 		: 1px #CCC solid;
	padding-top 		: 20px;
	margin-top 		: 20px; 
}
#footer .footer_area01
{
	padding-bottom 		: 0px; 
}

#footer .footer_area02 .footer_inner
{
	display 			: block;
}
#footer .footer_area02 .ft_nav
{
	width 				: 100%; 
}
#footer .footer_area02 .ft_nav:first-child
{
	margin-bottom 		: 25px; 
}
#footer small
{
	font-size 			: .8rem;
	padding 			: 10px 0px 10px; 
}


}



/*480以下の指定（スマホ横)*/
@media screen and (max-width: 480px) {





}


/*320以下の指定（スマホ縦)*/
@media screen and (max-width: 320px) {
}




/*---------------------------------------------------------*/
/*    copyright(C) CloudWorks. All rights reserved. Ver1.0   */
/*---------------------------------------------------------*/
