@charset "UTF-8";
/*base*/
*{
	margin: 0px;
	padding: 0px;
	}

header, footer, nav, section, article {
	display:block;
	}

html{
	font-size: 62.5%;
	overflow-y: scroll; 
	}

body{
	font-size: 1.4em;
	color: #666666;
	background: #ffffff;
	font-family: "メイリオ","Arial", "Helvetica",sans-serif;
	}

ul li{
	list-style-type: none;
	list-style-position: outside;
	}

ol li{
	list-style-position: outside;
	margin: 0px 0px 5px 2em;
	}
p{
	line-height: 170%;
	}


/*float*/
.alignleft{
	float: left;
	}

.alignright{
	float: right;
	}

.cl{
	clear: both;
	}

.clearfix{
	overflow: hidden;
	}
* html .clearfix { zoom: 1; }  /* IE6 */
*:first-child+html .clearfix{ zoom: 1; }  /* IE7 */

/*text-align*/
.txt_alignleft{
	text-align: left !important;
	}
.txt_alignright{
	text-align: right !important;
	}
.txt_aligncenter{
	text-align: center !important;
	}

/*vertical-align*/
.txt_aligntop{
	vertical-align: top !important;
	}
.txt_alignmiddle{
	vertical-align: middle !important;
	}
.txt_alignbottom{
	vertical-align: bottom !important;
	}

/*link*/
a img {
    border-style: none;
	}

a:link{
	color: #666666;
	text-decoration: none;
	}

a:active{
	text-decoration: underline;
	}

a:visited{
	color: #666666;
	}

a:hover{
	text-decoration: underline;
	}

a img:hover{
	opacity: 0.8;
	}

/*header*/
header{
	}

header .inner{
	width: 950px;
	margin: 0px auto;
	padding: 0;
	overflow: hidden;
	}

header h1 a{
	float: left;
	display: block;
	text-decoration: none;
	text-indent: -9999px;
	width: 318px;
	height: 37px;
	margin: 11px 0;
	background: url('../img/header_logo.gif') center center no-repeat;
	}

header h1 a:hover{
	opacity: 0.8;
	}

/*shouldermenu*/
#shouldermenu{
	margin: 21px 0;
	float: right;
	}

#shouldermenu ul{
	width: 198px;
	-js-display: flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	}

#shouldermenu li{
	list-style-type: none;
	}

#shouldermenu li a{
	display: block;
	text-decoration: none;
	text-indent: -9999px;
	height: 17px;
	}

#shouldermenu li.shouldermenu_inquiry a{
	width: 93px;
	margin-right: 15px;
	background: url('../img/shouldermenu_inquiry.png') 0 0 no-repeat;
	}
#shouldermenu li.shouldermenu_sitemap a{
	width: 90px;
	background: url('../img/shouldermenu_sitemap.png') 0 0 no-repeat;
	}

#shouldermenu li a:hover{
	opacity: 0.8;
	}

/*mainmenu*/
#mainmenu{
	clear: both;
	}

#mainmenu ul{
	width: 950px;
	margin-bottom: 5px;
	-js-display: flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	}

#mainmenu li{
	list-style-type: none;
	}
	
#mainmenu li a{
	display: block;
	text-decoration: none;
	text-indent: -9999px;
	height: 80px;
	}

#mainmenu li.mainmenu_01 a{
	width: 245px;
	background: url('../img/mainmenu_01.gif') center center no-repeat;
	}
#mainmenu li.mainmenu_02 a{
	width: 172px;
	background: url('../img/mainmenu_02.gif') center center no-repeat;
	}
#mainmenu li.mainmenu_03 a{
	width: 192px;
	background: url('../img/mainmenu_03.gif') center center no-repeat;
	}
#mainmenu li.mainmenu_04 a{
	width: 245px;
	background: url('../img/mainmenu_04.gif') center center no-repeat;
	}
#mainmenu li.mainmenu_05 a{
	width: 92px;
	background: url('../img/mainmenu_05.gif') center center no-repeat;
	}

#mainmenu li.mainmenu_01.on a,#mainmenu li.mainmenu_01 a:hover{
	width: 245px;
	background: url('../img/mainmenu_01_on.gif') center center no-repeat;
	}
#mainmenu li.mainmenu_02.on a,#mainmenu li.mainmenu_02 a:hover{
	width: 172px;
	background: url('../img/mainmenu_02_on.gif') center center no-repeat;
	}
#mainmenu li.mainmenu_03.on a,#mainmenu li.mainmenu_03 a:hover{
	width: 192px;
	background: url('../img/mainmenu_03_on.gif') center center no-repeat;
	}
#mainmenu li.mainmenu_04.on a,#mainmenu li.mainmenu_04 a:hover{
	width: 245px;
	background: url('../img/mainmenu_04_on.gif') center center no-repeat;
	}
#mainmenu li.mainmenu_05.on a,#mainmenu li.mainmenu_05 a:hover{
	width: 92px;
	background: url('../img/mainmenu_05_on.gif') center center no-repeat;
	}




/*contents*/


section{
	}

article{
	}

div.inner{
	width: 950px;
	margin-left: auto;
	margin-right: auto;
	}

/*footer*/
footer{
	margin-top: 30px;
	background: #fff3ed;
	position: relative;
	}

footer div.inner{
	height: 70px;
	-js-display: flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	}

footer p.copyright{
	color: #999999;
	font-size: 0.857em;
	}

/*pagetop*/
#btn_pagetop a{
	position: absolute;
	bottom: 10px;
	right: 10px;
	display: block;
	text-decoration: none;
	text-indent: -9999px;
	width: 40px;
	height: 40px;
	background: url('../img/btn_pagetop.png') center center no-repeat;
	}
#btn_pagetop a:hover{
	opacity: 0.8;
	}

/*width*/
.quattro{
	width: 25%;
	}

.half{
	width: 50%;
	}
*:first-child+html .half { width: 49%; }  /* IE7 */

.full{
	width: 100%;
	}

/*margin*/
.mgt1em{
	margin-top: 1em !important;
	}

.mgt10{
	margin-top: 10px;
	}

.mgt15{
	margin-top: 15px;
	}

.mgt20{
	margin-top: 20px;
	}

.mgt30{
	margin-top: 30px;
	}

.mgt40{
	margin-top: 40px;
	}

.mgt55{
	margin-top: 55px;
	}

.mgt60{
	margin-top: 60px;
	}


.mgt70{
	margin-top: 70px;
	}

.mgb20{
	margin-bottom: 20px;
	}

.mgl20{
	margin-left: 20px;
	}

.mgl30{
	margin-left: 30px;
	}


.mgr20{
	margin-right: 20px;
	}


/*fontsize*/
.txt_reset{
	font-size: 1em;
	}
.txt_12{
	font-size: 0.86em;
	}
.txt_16{
	font-size: 1.14em;
	}
.txt_18{
	font-size: 1.28em;
	}
.txt_20{
	font-size: 1.43em;
	}
.txt_24{
	font-size: 1.71em;
	}
.txt_30{
	font-size: 2.14em;
	}
.txt_36{
	font-size: 2.57em;
	}


/*fontweight*/
.txt_bold{
	font-weight: bold;
	}
.txt_normal{
	font-weight: normal;
	}


/*color*/
.col_999999{
	color: #999999;
	}


/*background*/
.bg_fae3ea{
	background: #fae3ea;
	}

.bg_fee9ba{
	background: #fee9ba;
	}

.bg_e1e6b3{
	background: #e1e6b3;
	}

.bg_d4f1eb{
	background: #d4f1eb;
	}

.bg_d3ecf8{
	background: #d3ecf8;
	}

.bg_dadada{
	background: #dadada;
	}


/*box*/
.box_ccc{
	border: 1px solid #cccccc;
	padding: 20px;
	}

/*icon*/
.icon_link{
	position: relative;
	padding-left: 23px;
	}

.icon_link::before{
	content: "";
	width: 17px;
	height: 17px;
	border-radius: 100%;
	background-color: #666666;
	position: absolute;
	top: 0;
	left: 0;
	}

.icon_link::after{
	content: "";
	position: absolute;
	top: 5px;
	left: 7px;
	box-sizing: border-box;
	width: 3px;
	height: 3px;
	border: 3px solid transparent;
	border-left: 3px solid #ffffff;
	}

.icon_link.col_f3bccd::before{
	background-color: #f3bccd;
	}

.icon_link.col_fcd784::before{
	background-color: #fcd784;
	}

.icon_link.col_cad377::before{
	background-color: #cad377;
	}

.icon_link.col_9adccf::before{
	background-color: #9adccf;
	}

.icon_link.col_96d1ec::before{
	background-color: #96d1ec;
	}

/*h*/
.circle_fcecc7{
	position: relative;
	padding-left: 50px;
	font-size: 1.428em;
	}
.circle_fcecc7::before{
	content: "";
	width: 30px;
	height: 30px;
	border-radius: 100%;
	background-color: #fcecc7;
	position: absolute;
	top: 0;
	left: 0;
	}

.circle_fcecc7::after{
	content: "";
	width: 16px;
	height: 16px;
	border-radius: 100%;
	background-color: #fcd784;
	border: 2px solid #ffffff;
	position: absolute;
	top: 5px;
	left: 5px;
	}


.circle_bdece3{
	position: relative;
	padding-left: 50px;
	font-size: 1.428em;
	}
.circle_bdece3::before{
	content: "";
	width: 30px;
	height: 30px;
	border-radius: 100%;
	background-color: #bdece3;
	position: absolute;
	top: 0;
	left: 0;
	}

.circle_bdece3::after{
	content: "";
	width: 16px;
	height: 16px;
	border-radius: 100%;
	background-color: #9adccf;
	border: 2px solid #ffffff;
	position: absolute;
	top: 5px;
	left: 5px;
	}


.circle_eef2c4{
	position: relative;
	padding-left: 50px;
	font-size: 1.428em;
	}
.circle_eef2c4::before{
	content: "";
	width: 30px;
	height: 30px;
	border-radius: 100%;
	background-color: #eef2c4;
	position: absolute;
	top: 0;
	left: 0;
	}

.circle_eef2c4::after{
	content: "";
	width: 16px;
	height: 16px;
	border-radius: 100%;
	background-color: #cad377;
	border: 2px solid #ffffff;
	position: absolute;
	top: 5px;
	left: 5px;
	}


.circle_dadada{
	position: relative;
	padding-left: 50px;
	font-size: 1.428em;
	}
.circle_dadada::before{
	content: "";
	width: 30px;
	height: 30px;
	border-radius: 100%;
	background-color: #dadada;
	position: absolute;
	top: 0;
	left: 0;
	}

.circle_dadada::after{
	content: "";
	width: 16px;
	height: 16px;
	border-radius: 100%;
	background-color: #999999;
	border: 2px solid #ffffff;
	position: absolute;
	top: 5px;
	left: 5px;
	}

.bar_gray{
	font-size: 1em;
	padding-left: 12px;
	position: relative;
	}
.bar_gray::before{
	content: "";
	width: 6px;
	height: 20px;
	border-radius: 3px;
	background-color: #666666;
	position: absolute;
	top: 0;
	left: 0;
	}



/*btn*/

/*table*/
table.tbl_01{
	width: 100%;
	border-spacing: 0px;
	border-top: 1px solid #cccccc;
	}

table.tbl_01 th,table.tbl_01 td{
	border-bottom: 1px solid #cccccc;
	padding: 20px;
	line-height: 1.7;
	vertical-align: top;
	}

table.tbl_01 th{
	width: 160px;
	text-align: left;
	background: #fff3ed;
	}

table.tbl_01 td{
	text-align: left;
	}


/*flex*/
.flex{
	-js-display: flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	}

.align_items_center{
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	}

.justify_content_space_between{
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	}

.justify_content_start{
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	}

.justify_content_center{
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	}

.flex_wrap{
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	}

/*hide*/
.sp,.mainmenu_btn{
	display: none;
	}

/* Media Queries
==========================================================================*/
@media screen and (min-width: 979px) {
}

@media screen and (max-width:699px) {
body{
	font-size: 1.6em;
	overflow-x: hidden;
	}

html {
	-webkit-text-size-adjust: none;
	}

img {
	max-width: 100%;
	height: auto;
     }

section,article{
	padding: 0 10px;
	}


div.inner{
	width: auto;
	padding: 0 10px;
	}


.flex{
	display: block;
	}

header{
	width: 100%;
	}

header .inner{
	width: auto;
	position: static;
	}

header h1 a{
	margin: 10px;
	width: 249px;
	height: 29px;
	-webkit-background-size: 249px 29px;
	-o-background-size: 249px 29px;
	-khtml-background-size: 249px 29px;
	background-size: 249px 29px;
	}

.mainmenu_btn,
.mainmenu_btn span{
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
	}
.mainmenu_btn{
	position: absolute;
	width: 30px;
	height: 23px;
	top: 10px;
	right: 10px;
	z-index: 1000;
	}
.mainmenu_btn span{
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #666666;
	}
.mainmenu_btn span.top {
	top: 0;
	}
.mainmenu_btn span.middle {
	top: 10px;
	}
.mainmenu_btn span.bottom {
	bottom: 0;
	}
.mainmenu_btn.active span.top {
	-webkit-transform: translateY(10px) rotate(-45deg);
	transform: translateY(10px) rotate(-45deg);
	}
.mainmenu_btn.active span.middle {
	opacity: 0;
	}
.mainmenu_btn.active span.bottom {
	-webkit-transform: translateY(-10px) rotate(45deg);
	transform: translateY(-10px) rotate(45deg);
	}

.menu_wrap{
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 999;
	width: 100%;
	height: 100%;
	padding-top: 50px;
	overflow: auto;
	background: rgba(255,255,255,0.85);
	}

.menu_wrap .is-open{
	display: block;
	}

/*shouldermenu*/
#shouldermenu{
	margin: 0;
	float: none;
	}

#shouldermenu ul{
	width: 198px;
	margin: 10px auto;
	-js-display: flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	}


/*mainmenu*/
#mainmenu{
	padding: 0 10px;
	}

#mainmenu ul{
	width: auto;
	margin-bottom: 0;
	display: block;
	}

#mainmenu li{
	margin-bottom: 1px;
	}
	
#mainmenu li a{
	text-indent: 0;
	height: 50px;
	padding-left: 10px;
	position: relative;
	-js-display: flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	}

#mainmenu li a::after{
	content: "";
	position: absolute;
	top: 16px;
	right: 10px;
	box-sizing: border-box;
	width: 10px;
	height: 20px;
	border: 10px solid transparent;
	border-left: 10px solid #ffffff;
	}

#mainmenu li.mainmenu_01 a,#mainmenu li.mainmenu_01 a:hover,#mainmenu li.mainmenu_01.on a{
	width: auto;
	background-image: none;
	background-color: #f3bccd;
	}
#mainmenu li.mainmenu_02 a,#mainmenu li.mainmenu_02 a:hover,#mainmenu li.mainmenu_02.on a{
	width: auto;
	background-image: none;
	background-color: #fcd784;
	}
#mainmenu li.mainmenu_03 a,#mainmenu li.mainmenu_03 a:hover,#mainmenu li.mainmenu_03.on a{
	width: auto;
	background-image: none;
	background-color: #cad377;
	}
#mainmenu li.mainmenu_04 a,#mainmenu li.mainmenu_04 a:hover,#mainmenu li.mainmenu_04.on a{
	width: auto;
	background-image: none;
	background-color: #9adccf;
	}
#mainmenu li.mainmenu_05 a,#mainmenu li.mainmenu_05 a:hover,#mainmenu li.mainmenu_05.on a{
	width: auto;
	background-image: none;
	background-color: #96d1ec;
	}



/*footer*/

footer{
	margin-top: 20px;
	}
footer div.inner{
	height: auto;
	display: block;
	text-align: center;
	padding: 14px 0;
	}

footer p.copyright{
	font-size: 0.857em;
	}
/*pagetop*/
#btn_pagetop{
	position: fixed;
	bottom: 10px;
	right: 10px;
	display: none;
	z-index: 1001;
	}
#btn_pagetop a{
	width: 30px;
	height: 30px;
	background-size: 30px 30px;
	}


/*hide*/
.pc{
	display: none;
	}
.sp{
	display: block;
	}

/*h*/
.circle_fcecc7,.circle_bdece3,.circle_dadada{
	position: relative;
	padding-top: 3px;
	padding-left: 35px;
	font-size: 1.1em;
	}
.bar_gray::before{
	top: 2px;
	left: 0;
	}

/*background*/
.bg_e6e6e6{
	padding: 10px;
	}


/*box*/
.box_ccc{
	padding: 10px;
	}

/*table*/
table.tbl_01 th,table.tbl_01 td{
	padding: 5px;
	}

table.tbl_01{
	border-left: none;
	}

table.tbl_01 tr{
	display: block;
	}
table.tbl_01 th,table.tbl_01 td{
	display: list-item;
	list-style-type: none;
	width: auto;
	padding: 5px;
	}

table.tbl_01 th{
	}




}