@charset "UTF-8";

/*----------------------------------------------------
☆Reset
----------------------------------------------------*/

html {
	font-size: 62.5%; /* sets the base font to 10px for easier math */

}

body,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
ul,
ol,
li,
dl,
dt,
dd,
p,
img {
	margin: 0;
	padding: 0;
}

body {
	color: #161d23;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1;
}
/*
_:-ms-input-placeholder, :root body {
  font-family:"メイリオ", Meiryo, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic",  sans-serif;
}
*/

body * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

a,
a:link,
a:hover,
a:focus {
	color: #333;
	text-decoration: none;
	cursor: pointer;
	outline: none;
}

a:hover {
	/* opacity: 0.5; */
	text-decoration: none;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	zoom:1;
}




ul,
ol {
	list-style-type: none;
}

::selection {
	background-color: #161d23;
	color: #fff; /* Safari */
}

::-moz-selection {
  background-color: #161d23;
  color: #fff; /* Firefox */
}

body #wrap{
	overflow: hidden;
}

img{
	vertical-align: bottom;
}

.noclick a:hover{
	opacity: 1;
	cursor: default;
}

@font-face {
    font-family: 'Noto Serif Japanese';
    font-style: normal;
    font-weight: 400;
    src:
	     url('../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Regular.woff') format('woff'),
	     url('../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Regular.otf')  format('opentype');
   font-display: swap;
}
@font-face {
    font-family: 'Noto Serif Japanese';
    font-style: normal;
    font-weight: 500;
    src:
	     url('../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Medium.woff') format('woff'),
	     url('../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Medium.otf')  format('opentype');
   font-display: swap;
}
@font-face {
    font-family: 'Noto Serif Japanese';
    font-style: normal;
    font-weight: 700;
    src:
	     url('../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Bold.woff') format('woff'),
	     url('../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Bold.otf')  format('opentype');
   font-display: swap;
}
svg {
  backface-visibility: hidden;
  transform: translateZ(0);
}
/*----------------------------------------------------
☆header
----------------------------------------------------*/
#header{
	position: fixed;
	height: 100%;
	top: 0;
	bottom: 0;
	left: 0;
	width: 185px;
	background: #ffffff;
	/* transition: all 0.1s cubic-bezier(0.785, 0.135, 0.15, 0.86);
	-webkit-transition: all 0.1s cubic-bezier(0.785, 0.135, 0.15, 0.86);
	-moz-transition: all 0.1s cubic-bezier(0.785, 0.135, 0.15, 0.86);
	-ms-transition: all 0.1s cubic-bezier(0.785, 0.135, 0.15, 0.86); */
	z-index: 1000;
	padding: 30px 15px 60px 25px;
}
#header:after {
	content: "";
	display: block;
	width: 1px;
	height: 100%;
	background-color: #dddddd;
  transition: all 2s cubic-bezier(0.23, 1, 0.32, 1);
	position: absolute;
	right: 0;
	bottom: 0;
}
#header.top_mv_show:after{
	height: 0;
}
#header.top_mv_show{
	background: transparent;
	border-right: 1px solid #ddd;
}
#header .logo_top{
	width: 145px;
	margin-bottom: 60px;
}
#header.top_mv_show .logo_top{
	width: 309px;
	padding: 10px 0;
}
#header .logo_top img{
	width:calc(100% - 10px);
}
#header a{
	-webkit-transition: all 0.2s ease-in;
  transition: all 0.2s ease-in;
  -moz-transition: all 0.2s ease-in;
  -ms-transition: all 0.2s ease-in;
}
#header .pc_menu a{
	display: block;
	font-size:16px;
	letter-spacing: 2px;
	margin-bottom: 35px;
	font-weight: bold;
}
#header .pc_menu li:nth-last-of-type(1) a{
	padding-bottom: 0;
}
#header .pc_menu li p{
	position: relative;
	display: inline-block;
}
#header .pc_menu li p:after{
	content: "";
	display: block;
	height: 2px;
	width: 0;
	background-color: #fff;
	position: absolute;
	top: 18px;
	-webkit-transition: all 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);
	transition: all 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);
	-moz-transition: all 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);
	-ms-transition: all 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);
}

#header .pc_menu li.active p:after{
	width: 100%;
}
#header .language {
	margin:60px auto;
	font-weight: bold;
}
#header .language a{
	font-size:14px;
}
#header .language a:hover{
	color: #005999;
	opacity: 1;
}
#header .language a.now{
	color: #005999;
}
#header .menu_button a{
	margin: 12px auto 0;
	display: block;
	text-align: center;
	font-size:12px;
	letter-spacing: 1px;
	color: #005999;
	padding: 12px 0;
	border: 1px solid #005999;
	border-radius: 38px;
	font-weight: bold;
}
#header .menu_button a:hover{
	opacity: 0.3;
	text-decoration: none;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
#header .pc_header{
	display: block;
}
#header .sp_header{
	display: none;
}
/* メガメニュー */
#header .mega_menu {
	display: none;
	position: absolute;
	left: 185px;
	width: 0;
	height: 100%;
	top: 0;
	background-color: rgba(240, 243, 245, 0.9);
	border-right: 1px solid #f0f3f5;
	padding-top: 130px;
	box-sizing: border-box;
	z-index: 0;
}
#header .mega_menu li a {
  color: #333!important;
  font-size: 14px;
  display: block;
  padding: 15px 0 15px 18px;
  white-space: nowrap;
  -webkit-transition: all 0.5s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition: all 0.5s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  -moz-transition: all 0.5s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  -ms-transition: all 0.5s cubic-bezier(0.785, 0.135, 0.15, 0.86);
	line-height: 1.4;
}
#header .mega_menu li a:hover {
  background-color: #d1dae0;
	opacity: 1;
}
#header .pc_menu .mega_menu li a{
	text-shadow:0 0 0 #000000;
	font-weight: 500;
	background: none;
	margin-bottom: 0;
}
#header .pc_menu .mega_menu li:nth-last-of-type(1) a{
	padding-bottom: 15px;
}

#header .mega_menu .mega_menu_in{
	display: none;
	position: absolute;
	left: 250px;
	width: 0;
	height: 100%;
	top: 0;
	background-color: rgba(240, 243, 245, 0.7);
	border-right: 1px solid #f0f3f5;
	padding-top: 130px;
	box-sizing: border-box;
	z-index: 0;
}

/*----------------------------------------------------
☆breadChumbs
----------------------------------------------------*/
#breadChumbs {
	background: #f0f3f5;
	margin: 0 auto;
	padding: 13px 0;
	width: 100%;
}

#breadChumbs p {
	color: #161d23;
	font-size: 11px;
	font-size: 1.1rem;
	line-height: 1.4;
	margin: 0 auto;
	width: 900px;
	transition: 0.2s;
}

#breadChumbs p a {
	color: #006bb7;
}

#breadChumbs p a.currentPoint {
	color: #161d23;
	text-decoration: none;
	opacity: 1;
	cursor: default;
}


/*----------------------------------------------------
☆contents
----------------------------------------------------*/
#contents{width: 100%;padding-left:185px;}
#contents .main{width:900px; margin:60px auto 120px;}

#main_head_parts{
	width: 100%;
	background: url('../images/top_contents_bk.jpg') no-repeat center center/cover;
	height:250px;
	position: relative;
}
#main_head_parts h1{
	font-family: 'Noto Serif Japanese', serif;
	color: #fff;
	font-size:24px;
	letter-spacing: 8px;
	font-weight: 500;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}
.text{
	font-size:14px;
	line-height:1.8;
	letter-spacing:1px;
	margin-bottom:20px;
}
.top_txt{
	font-size:14px;
	line-height:1.6;
	letter-spacing:1px;
	margin-bottom:15px;
	margin-bottom:50px;
}
.main section{margin-bottom: 80px;}
.main section:nth-last-of-type(1){margin-bottom: 0;}
.number li{font-size:14px;font-weight:bold;line-height:1.4;letter-spacing:1px;}
.number li span{
	font-size:24px;
	font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3","Hiragino Mincho ProN",HGS明朝E,游明朝,"Yu Mincho",YuMincho,serif;
	font-style: italic;
}
/* list */
ol{
	counter-reset: my-counter;
}
ol li{
	padding-left: 1em;
  text-indent: -1em;
	font-size: 14px;
	line-height: 1.6;
}
ol li:before{
	content: counter(my-counter);
  counter-increment: my-counter;
}
.dott_list li{
	padding-left: 1em;
  text-indent: -1em;
}
.dott_list li:before{
	content: "・";
}
.circle_list li{
	font-size:14px;
	line-height: 1.6;
	padding-left: 1em;
  text-indent: -1em;
	position: relative;
}
.circle_list li:before{
	content: "";
	width: 10px;
	height: 10px;
	background: #fff;
	border: 3px solid #161d23;
	box-sizing: border-box;
	display: inline-block;
	border-radius: 50%;
}

.asterisk li{
	font-size:14px;
	line-height: 1.6;
	padding-left: 1em;
  text-indent: -1em;
	position: relative;
}
.asterisk li:before{
	content: "※";
}
/* head */
.head02 {
	font-family: 'Noto Serif Japanese', serif;
	text-align: center;
	margin:0 auto 50px;
	font-size: 18px;
	letter-spacing: 3px;
	display:block;
	padding-bottom: 15px;
	font-weight: 400;
	position: relative;
}
.head02:after {
	content: "";
	width: 80px;
	height: 1px;
	background: #005999;
	position: absolute;
	bottom: 0;
	right: 50%;
	margin-right: -40px;
}
.head03 {
	border-bottom: 1px solid #e2e2e2;
	padding-bottom: 5px;
	margin-bottom: 30px;
}
.head03 span{
	font-family: 'Noto Serif Japanese', serif;
	font-weight: 400;
	font-size:18px;
	letter-spacing: 3px;
	line-height: 26px;
	display: block;
	padding-left:10px;
	border-left:6px solid #005999;
}

.head04 {
	border-bottom: 1px solid #e2e2e2;
	padding-bottom: 5px;
	margin-bottom: 20px;
	font-family: 'Noto Serif Japanese', serif;
	font-weight: 400;
	font-size:18px;
	letter-spacing: 3px;
	line-height: 26px;
	display: block;
	padding-left:16px;
	position: relative;
}
.head04:before{
	content: "";
	width: 0;
	height: 0;
	border-left: 8px solid #005999;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	position: absolute;
	left:0;
	top:4px;
}
/* clm */
.clm2,.clm3,.clm4,.clm5{font-size: 0;}
.clm2 li img,.clm3 li img,.clm4 li img,.clm5 li img{width:100%;}
.clm2 li{width: 49%;margin-right: 2%;display: inline-block;vertical-align: top;}
.clm2 li:nth-of-type(even),.clm3 li:nth-of-type(3n),.clm4 li:nth-of-type(4n),.clm5 li:nth-of-type(5n){margin-right: 0;}
.clm3 li{width: 32%;margin-right: 2%;display: inline-block;vertical-align: top;}
.clm4 li{width: 23.5%;margin-right: 2%;display:inline-block;vertical-align:top;}
.clm5 li{width: 16%;margin-right: 5%;display:inline-block;vertical-align:top;}
/* button */
.detail_button a{
	display: block;
	border-radius: 5px;
	font-size:14px;
	color: #006bb7;
	letter-spacing: 1px;
	padding: 10px;
	border: 1px solid #006bb7;
	text-align: center;
}
.button_arrow a{
	display: block;
	border-radius: 8px;
	font-size:14px;
	height: 60px;
	color: #006bb7;
	letter-spacing: 1px;
	padding: 10px;
	border: 1px solid #006bb7;
	text-align: center;
	position: relative;
	font-weight: bold;
}
.button_arrow a:after{
	content: "";
	position: absolute;
	right: 20px;
	top:50%;
	margin-top:-3.5px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #006bb7;
	border-right: 1px solid #006bb7;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.button_arrow a span{
	line-height: 1.5;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	width: 100%;
}
/* table */
.table01 table{
	width: 750px;
	margin: 0 auto;
	border-collapse: collapse;
}
.table01 table tr{
	border-bottom:1px solid #e2e2e2;
}
.table01 table tr:nth-of-type(1){
	border-top:1px solid #e2e2e2;
}
.table01 table th{
	width: 24%;
	padding:0 20px;
	font-size:14px;
	letter-spacing: 1px;
	text-align: left;
	vertical-align: middle;
	background: #f0f3f5;
}
.table01 table td{
	padding: 10px;
	vertical-align: middle;
	font-size:14px;
	line-height: 1.6;
}
/* form */
form .s{width: 20%;}
form .ss{width: 30%;}
form .m{width: 40%;}
form .mm{width: 50%;}
form .w{width: 80%;}
form .ww{width: 100%;}
form .field{
	padding: 10px;
	border: 0;
	background: #f0f3f5;
	letter-spacing: 1px;
}
form table{
	width: 100%;
	border-collapse: collapse;
}
form th{
	width:28%;
	text-align: left;
	font-weight:normal;
	vertical-align: middle;
	padding: 15px 0;
}
form th .wrap{position: relative;}
form th .title{
	font-size:14px;
	padding-left:10px;
	border-left:4px solid #e2e2e2;
}
form th .required{
	font-size:10px;
	display:inline-block;
	padding:5px 13px;
	color:#005999;
	border:1px solid #005999;
	position: absolute;
	right: 40px;
	top:-1.5px;
}
form th.line_top{vertical-align: top;}
form tr{border-bottom:1px solid #e2e2e2;}
form tr:nth-last-of-type(1){border-bottom: 0;}
form td{
	width:72%;
	font-size:14px;
	padding:15px 0;
}
form .btn_box{text-align: center;font-size:0;margin-top:40px;}
form button.button_trans{
	width: 330px;
	height: 55px;
	text-align: center;
	border: none;
	background: #005a99;
	border: 1px solid #005a99;
	color: #fff;
	letter-spacing: 1px;
	font-size:15px;
	border-radius: 3px;
	display: inline-block;
	padding: 0;
	cursor: pointer;
}
form button.returns{
	margin-right: 25px;
	width: 330px;
	height: 55px;
	text-align: center;
	border: none;
	background: #fff;
	border: 1px solid #005a99;
	color: #005a99;
	letter-spacing: 1px;
	font-size:15px;
	border-radius: 3px;
	display: inline-block;
	padding: 0;
	cursor: pointer;
}
form textarea{height: 250px;}
/* tab */
.tab01,.tab02{
	text-align: center;
	font-size:0;
	width: 100%;
}
.tab01 li,.tab02 li{
	display: inline-block;
}
.tab01 li{
	width: 18%;
	margin: 0 1%;
}
.tab01 li a{
	font-size:13px;
	text-align: center;
	letter-spacing: 1px;
	color: #b8c6d0;
	width: 100%;
	height: 35px;
	line-height: 35px;
	display: block;
	border:1px solid #b8c6d0;
	border-radius:2px;
	font-weight: bold;
}
.tab01 li.select a{
	color: #006bb7;
	border:1px solid #006bb7;
}

.tab02 li{
	font-size:14px;
	text-align: center;
	letter-spacing: 1px;
	padding: 0 30px;
	position: relative;
	cursor: pointer;
}
.tab02 li.active{
	color: #006bb7;
}
.tab02 li:nth-of-type(2):before{
	content: "/";
	position:absolute;
	left:0;
	margin-left:-7px;
}
.tab02 li:nth-of-type(2):after{
	content: "/";
	position:absolute;
	right:0;
	margin-right:-7px;
}

.content_wrap.tabnon,
.content_wrap_in{
	display: none;
}
.content_wrap,
.content_wrap_in.active{
	display: block;
}
/*----------------------------------------------------
☆footer
----------------------------------------------------*/
#main_contact_parts{
	width: 100%;
	background: url('../images/btm_bk.jpg') no-repeat center center/cover;
	background-attachment: fixed;
	height: 370px;
	text-align: center;
	position: relative;
}

#main_contact_parts .main_contact_parts{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}
#main_contact_parts h2{
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-size:21px;
	letter-spacing: 2px;
	font-weight: 500;
	line-height: 1.8;
}
#main_contact_parts .button a{
	width: 350px;
	line-height: 55px;
	height: 55px;
	font-size: 16px;
	letter-spacing: 1px;
	background:#005999;
	display:block;
	color: #fff;
	margin: 45px auto 0;
	border-radius: 3px;
}
#main_contact_parts .button a:hover {
	opacity: 0.5;
	text-decoration: none;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	zoom:1;
}
#footer{
	width: 100%;
	background: #f0f3f5;
	height: 160px;
}
#footer .box_bottom_menu{
	width: 900px;
	margin: 0 auto;
	padding-top:54px;
}
#footer .box_bottom_menu .boxL{
	width: 28%;
}
#footer .box_bottom_menu .boxL .logo_bottom{
	width: 252px;
}
#footer .box_bottom_menu .boxL img{
	width: 100%;
}
#footer .box_bottom_menu .boxR .bottom_menu_01 li,
#footer .box_bottom_menu .boxR .bottom_menu_02 li{
	float: left;
}
#footer .box_bottom_menu .boxR .bottom_menu_01 li a{
	font-size:12px;
	padding-right: 30px;
	letter-spacing: 2px;
	font-weight: bold;
}
_:-ms-input-placeholder, :root #footer .box_bottom_menu .boxR .bottom_menu_01 li a{
	font-size:12px;
	padding-right: 30px;
	letter-spacing: 2px;
	font-weight: 600;
}
#footer .box_bottom_menu .boxR .bottom_menu_01 li:nth-last-of-type(1) a{
	padding-right: 0;
}
#footer .box_bottom_menu .boxR .bottom_menu_02{
	float: right;
	margin-top:20px;
}
#footer .box_bottom_menu .boxR .bottom_menu_02 li a{
	font-size:11px;
}
#footer .box_bottom_menu .boxR .bottom_menu_02 li.li01{
	padding-right: 15px;
	border-right: 1px solid #161d23;
}
#footer .box_bottom_menu .boxR .bottom_menu_02 li.li02{
	padding-left:15px;
}
small{
	display: block;
	font-size:10px;
	text-align: center;
	padding: 20px 0;
	letter-spacing: 1px;
}

.pagetop {
    display: none;
    position: fixed;
    bottom: 30px;
    right: 15px;
}
.pagetop a {
    display: block;
    background-color: #ccc;
    text-align: center;
    color: #222;
    font-size: 20px;
    text-decoration: none;
    padding: 16px;
	filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}
.pagetop a:hover {
    display: block;
    background-color: #b2d1fb;
    text-align: center;
    color: #fff;
    font-size: 20px;
    text-decoration: none;
    padding:16px;
	  filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}





/*----------------------------------------------------
	☆SP
----------------------------------------------------*/


/*デバイスの横幅が1080px以下の場合*/

@media only screen and (max-width: 1080px) {
	html{
		-webkit-overflow-scrolling: touch;
	}
	/*----------------------------------------------------
	☆header
	----------------------------------------------------*/
	#header{
		position: fixed;
		height: 55px;
		top: 0;
		bottom: 0;
		left: 0;
		width: 100%;
		background: #fff;
		z-index: 10;
		padding: 0 0;
		border-bottom: 1px solid #ddd;
	}
	#header.top_mv_show{
		border-bottom: 0;
	}
	#header .pc_header{
		display: none;
	}
	#header .sp_header{
		display: block;
	}
	/*style for sp spmenu*/
	#sp_nav{
		display: none;
		width: 100%;
		height: calc(100% - 55px);
		padding: 0 0 20px;
		position: fixed;
		background-color: #fff;
		top: 55px;
		left: 0;
		overflow: scroll;
	}

	#sp_nav h3{
		font-family: 'Noto Serif Japanese', serif;
		padding: 15px;
		border-bottom: solid 1px #ececec;
		position: relative;
		font-weight: 400;
		font-size:14px;
	}
/*
	#sp_nav h3::after{
		display: block;
		content: '';
			width: 6px;
			height: 6px;
			border: 0px;
			border-top: solid 2px #666;
			border-right: solid 2px #666;
			-ms-transform: rotate(45deg);
			-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
			position: absolute;
		top: 20px;
			right: 20px;
	}

	#sp_nav h3.toggleMenu::after{
			border-top: solid 2px #666;
			border-right: solid 2px #666;
			-ms-transform: rotate(135deg);
			-webkit-transform: rotate(135deg);
			transform: rotate(135deg);
	}
	#sp_nav h3.toggleMenu.is-show::after{
			border-top: solid 2px #666;
			border-right: solid 2px #666;
			-ms-transform: rotate(315deg) !important;
			-webkit-transform: rotate(315deg) !important;
			transform: rotate(315deg) !important;
			position: absolute;
	}
	 */
	 #sp_nav h3::after{
	 	content: '';
	 	width: 20px;
	 	height: 20px;
	 	position: absolute;
	 	top: 50%;
	 	margin-top: -10px;
	 	right: 15px;
	 }
	 #sp_nav h3.toggleMenu::after{
	 	background: url('../cmn_img/arrow_down.png') no-repeat center center/cover;
	 }
	 #sp_nav h3.toggleMenu.is-show::after{
	 	background: url('../cmn_img/arrow_up.png') no-repeat center center/cover;
	 }
	#sp_nav .head_contact.faq,
	#sp_nav .head_contact.list{
		max-width: 400px;
		width: 100%;
	}
	#sp_nav .head_contact.faq{margin-bottom: 150px; }


	#sp_nav h3 a{
		color: #333;
	}

	#sp_nav ul{
		display: none;
	}
	#sp_nav ul li{
		display: block;
		width: 100%;
		vertical-align: top;
		border-bottom: solid 1px #ececec;
	}


	#sp_nav ul li a,
	#sp_nav ul li.splist_btn{
		display: block;
		padding: 15px 15px 15px 30px;
		color: #444546;
		background-color: #eeeeee;
		font-weight: 400;
		font-size: 12px;
		border-bottom: 1px solid #fff;
		cursor: pointer;
	}
	#sp_nav ul li.splist_btn+li{
		display: none;
	}
	#sp_nav ul li a.dec{
		padding-left: 50px;
		background-color: #d2d2d2;
		border-bottom: solid 1px #ececec;
		}
	#sp_nav ul li a.dec:nth-last-of-type(1){
		border-bottom: 0;
	}
	#sp_nav ul li a::before,
	#sp_nav ul li.splist_btn::before{
		display: inline-block;
		content: '';
		width: 4px;
		height: 4px;
		border: 0px;
		border-top: solid 1px #333;
		border-right: solid 1px #333;
		margin-right: 10px;
		vertical-align: middle;
	}
	#sp_nav ul li a::before{
		-ms-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#sp_nav ul li.splist_btn::before{
		-ms-transform: rotate(135deg);
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
	}
	#sp_nav ul li.splist_btn.in-show::before{
		-ms-transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}


	#sp_nav ul li a.toIndex{
		background-color: transparent;
		padding-left: 15px;
	}
	#sp_nav .language_list{
		margin-top:20px;
	}
	#sp_nav .language_list p a{
		width: calc(100%/2);
		float: left;
		display: block;
		text-align: center;
		font-size: 15px;
		height: 45px;
		line-height: 45px;
		letter-spacing: 1px;
		font-weight: bold;
		font-size:15px;
	}
	#sp_nav .language_list p:nth-of-type(1) a{
		color: #fff;
		background: #72706a;
		border-left: 10px solid #fff;
		border-right:5px solid #fff;
	}
	#sp_nav .language_list p:nth-of-type(2) a{
		color: #fff;
		background: #005999;
		border-left: 5px solid #fff;
		border-right:10px solid #fff;
	}
	.sp_header .sp_logo{
		width: 204px;
		height: 55px;
		float: left;
		padding:16px;
	}
	.sp_header .sp_logo img{
		width: 172px;
		height: 23px;
	}
	.sp_header .sp_contact_btn a{
		float: right;
		height: 55px;
		display: flex;
		flex-direction: column;
		position: relative;
		justify-content: flex-end;
		text-align: center;
	font-size: 10px;
	letter-spacing: 0.5px;
	padding: 8px 0;
	}
	.sp_header .sp_contact_btn a::after{
		content: "";
		background-image: url(../cmn_img/sp_contact.svg);
		height: 28px;
		width: 28px;
		background-position: center;
		background-size: contain;
		position: absolute;
		top: 7px;
		left: 50%;
		transform: translateX(-50%);
	}
	.sp_header .sp_contact_btn.top a::after{
		background-image: url(../cmn_img/sp_contact_wh.svg);
	}

	.sp_header .sp_menu{
		width:55px;
		height: 55px;
		float: right;
		position: relative;
		overflow: hidden;
		display: block;
		z-index: 0;
	}
	.sp_header .sp_menu span {
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left:0;
		right: 0;
		width: 21px;
		height: 4px;
		margin: auto;
		background: #000;
		-webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
	}
	.top_mv_show .sp_header .sp_menu span{
		background: #fff;
	}
	.sp_header .sp_menu span:nth-of-type(1){
		top: -17px;
	}
	.sp_header .sp_menu span:nth-of-type(2){
		top: -1px;
	}
	.sp_header .sp_menu span:nth-of-type(3){
		top: 16px;
	}
	.sp_header .sp_menu.open span:nth-of-type(1) {
		top: -1px;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.sp_header .sp_menu.open span:nth-of-type(2) {
		opacity: 0;
	}

  .sp_header .sp_menu.open span:nth-of-type(3) {
		top: -1px;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
	}
	/*----------------------------------------------------
	☆breadChumbs
	----------------------------------------------------*/
	#breadChumbs {
		display: none;
	}


	/*----------------------------------------------------
	☆contents
	----------------------------------------------------*/
	#contents{padding-left:0;}
	#contents .main{width:90%; margin:40px auto;}
	#main_head_parts{
		height:initial;
	}
	#main_head_parts h1{
		color: #fff;
		font-size:20px;
		letter-spacing: 5px;
		position: initial;
		transform:initial;
		-webkit-transform: initial;
		padding: 105px 0 50px;
		text-align: center;
	}
	.text,.top_txt{
		font-size:12px;
		line-height:1.6;
		letter-spacing:1px;
		margin-bottom:10px;
	}
	.top_txt{margin-bottom: 20px;}
	.main section{margin-bottom: 30px;}
	.number li{
		font-size:12px;
		padding-left:2.6em;
		text-indent:-2.6em;
	}
	.number li span{
		font-size:22px;
	}
  /* head */
	.head02 {
		margin:0 auto 20px;
		font-size: 17px;
		line-height: 1.4;
		padding-bottom: 10px;
	}

	.head03 {
		padding-bottom: 5px;
		margin-bottom: 20px;
	}
	.head03 span{
		font-size:16px;
		letter-spacing: 1px;
		line-height: 1.6;
	}
	.head04 {
		font-size:15px;
		letter-spacing: 1px;
		margin-bottom: 10px;
	}
  /* clm */
	.clm3_sp li:nth-of-type(3n){margin-right: 2%;}
	.clm4_sp li:nth-of-type(4n){margin-right: 2%;}
	.clm5_sp li:nth-of-type(5n){margin-right: 2%;}
	.clm3_sp li,.clm4_sp li,.clm5_sp li{width: 49%;margin-right: 2%;}
	.clm3_sp li:nth-of-type(even),.clm4_sp li:nth-of-type(even),.clm5_sp li:nth-of-type(even){margin-right: 0;}
  /* button */
	.detail_button a{
		font-size:13px;
	}
	.button_arrow a{
		font-size:12px;
		height: 40px;
		border-radius: 6px;
	}
	.button_arrow a:after{
		margin-top:-3px;
		width: 6px;
		height: 6px;
	}
	.button_arrow a span{
		line-height: 1.3;
	}
  /* table */
	.table01 table{
		width: 100%;
		margin: 0 auto;
		border-collapse: collapse;
	}
	.table01 table th{
		border-bottom:1px solid #e2e2e2;
		text-align: center;
		width: 100%;
		display: block;
		padding:10px;
		font-size:12px;
		text-align: center;
		clear: both;
	}
	.table01 table td{
		width: 100%;
		display: block;
		padding: 5px 10px;
		font-size:12px;
	}
  /* list */
	.circle_list li{
		font-size:12px;
		line-height: 1.6;
	}
	ol li{
		font-size: 12px;
	}
	.asterisk li{
		font-size:12px;
	}
  /* form */
	form .s{width: 20%;}
	form .ss{width: 30%;}
	form .m{width: 40%;}
	form .mm{width: 50%;}
	form .w{width: 80%;}
	form .ww{width: 100%;}
	form .field{
		padding:10px;
	}
	form th{
		width:100%;
		display: block;
		text-align: left;
		padding: 10px 0 5px;
	}
	form th .title{
		font-size:12px;
	}
	form th .required{
		right: 0;
		top:-1px;
	}
	form td{
		display: block;
		width: 100%;
		padding: 5px 0 10px;
		font-size:12px;
	}

	form button.returns,
	form button.button_trans{
		width: 100%;
		height: 40px;
		font-size:14px;
		margin: 0 auto;
		display: inline-block;
	}
	form .btn_box{text-align: center;font-size:0;margin-top:20px;}
	form button.returns{
		margin-bottom:10px;
		margin-right: 0;
	}
	form textarea{height: 150px;}
	/* tab */
	.tab01 li{
		width: 48%;
		margin:2% 1%;
	}
	.tab01 li a{
		font-size:14px;
		width: 100%;
	}
	.tab02 li{
		font-size:12px;
		letter-spacing: 1px;
		padding: 0 10px;
	}
	.tab02 li:nth-of-type(2):before{
		margin-left:-4px;
	}
	.tab02 li:nth-of-type(2):after{
		margin-right:-4px;
	}

	/*----------------------------------------------------
	☆footer
	----------------------------------------------------*/
	#main_contact_parts{
		height: 280px;
		/* padding-top:85.33%; */
	}
	#main_contact_parts .main_contact_parts{
		width: 90%;
		margin: 0 auto;
	}

	#main_contact_parts h2{
		font-size:17px;
		letter-spacing: 2px;
		font-weight: 500;
		line-height: 1.8;
	}
	#main_contact_parts .button a{
		width: 100%;
		line-height: 50px;
		height: 50px;
		font-size: 15px;
		letter-spacing: 1px;
		margin: 30px auto 0;
	}

	#footer{
		height: initial;
	}
	#footer .box_bottom_menu{
		width: 68%;
		margin: 0 auto;
		padding:34px 0;;
	}
	#footer .box_bottom_menu .boxL{
		width: 100%;
	}
	#footer .box_bottom_menu .boxL .logo_bottom{
		width: 216px;
		margin: 0 auto;
	}
	#footer .box_bottom_menu .logo_bottom img{
		width: 100%;
	}
	#footer .box_bottom_menu .boxR .bottom_menu_01{
		display: none;
	}
	#footer .box_bottom_menu .boxR .bottom_menu_02{
		float: none;
		width: 200px;
		margin: 30px auto 0;
	}

	#footer .box_bottom_menu .boxR .bottom_menu_02 li.li01{
		padding-right: 10px;
	}
	#footer .box_bottom_menu .boxR .bottom_menu_02 li.li02{
		padding-left:10px;
	}
	small{
		font-size:9px;
		padding: 13px 0 53px;
		letter-spacing: 1px;
	}
	.other_list{
		width: 100%;
		position: fixed;
		bottom: 0;
	}
	.other_list p a{
		width: calc(100%/2);
		float: left;
		display: block;
		text-align: center;
		font-size: 12px;
		height: 40px;
		line-height: 40px;
		letter-spacing: 1px;
		color: #fff;
	}
	.other_list p:nth-of-type(1) a{
		background: #72706a;
	}
	.other_list p:nth-of-type(2) a{
		background: #024779;
	}
	.pagetop {
		bottom: 50px;
	}
	.pagetop a,
	.pagetop a:hover {
		font-size: 16px;
		padding:14px;
	}


}
