/*
 * "FontName" licensed under the IPA Font License Agreement v1.0
 * http://mix-mplus-ipa.osdn.jp/migmix/（配布元のURL）
 * http://fontopo.com/?p=164（配布元のURL）
 * http://ipafont.ipa.go.jp/（IPAフォントのURL）
 * http://ipafont.ipa.go.jp/ipa_font_license_v1.html（IPAフォントライセンスv1.0のURL）
 */
/*

■GENERAL
■汎用クラス
■HEADER
■グローバルナビ
■footer
■max-width: 1020px
■max-width: 768px
■max-width: 480px
■max-width: 320px

*/

/*******************************************▼ここからLINE追加**************/
.renewal-telline {
	display: flex;
	justify-content: space-between;
}

.renewal-footer-tel {
}
@media screen and (max-width: 1020px) {
	.renewal-footer-tel {
    width: 54%;
	 }
}

.renewal-footer-line {
	padding-top: 10px;
}
@media screen and (max-width: 1020px) {
	.renewal-footer-line {
	 }
}

/*******************************************▲ここまでLINE追加**************/


/*--------------------------
---------- GENERAL ---------
--------------------------*/
* {
	margin:0;
	padding:0;

}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong,var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	list-style-type: none;
}


html, body {
	width:100%;
	height:100%;
  -webkit-font-smoothing: antialiased;
	color: #343434;
	font-weight: normal;
	font-size: 14px;
	line-height: 1.5;
  -webkit-text-size-adjust: 100%;

  }

body {
	overflow-x: hidden;
	font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
   -webkit-font-smoothing: antialiased;
  }

br {
	letter-spacing:0;
}

/* clearfix */
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	font-size:0;
	clear: both;
	visibility:hidden;
}
.clearfix {
	display: inline-block;
}
/* Hides from IE Mac \*/
* html .clearfix {height: 1%;}
.clearfix{display:block;}
/* End Hack */

a{
	overflow:hidden;
	outline:none;
	color: #111111;
	text-decoration: underline;
	-webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
	transition: all 0.5s;
	line-height: 1em;
}

a:hover {
	color: #343434;
	text-decoration: none;
}

a:focus, *:focus { outline:none; }

div:focus, *div:focus { outline:none; }


img{
	max-width: 100%;
	height: auto;
	width /***/:auto;
	vertical-align: top;
}

a img {
	border:none;
	vertical-align: top;
	opacity: 1.0;
	-webkit-transition: all 0.35s ease-in-out;
    -moz-transition: all 0.35s ease-in-out;
	transition: all 0.35s ease-in-out;
}

a:hover img {
	opacity: 0.7;
}

h1 {
	font-size: 11px;
	font-weight: normal;
	line-height: 1em;
	padding-top: 5px;
	padding-bottom: 5px;
	color: #ffffff;
	background-color: #e60012;
	width: 100%;
}

h1 span {
	display: block;
	width: 1000px;
	margin-right: auto;
	margin-left: auto;
}


h2 {
	margin-bottom: 20px;
}

h4 {
	font-size: 20px;
	padding: 10px;
	font-weight: normal;
	margin-bottom: 20px;
}

p {
	margin-bottom:1em;
	overflow: auto;
	white-space: normal;
	white-space: -moz-pdre-wrap; /* Mozilla */
	white-space: -pdre-wrap;     /* Opera 4-6 */
	white-space: -o-pdre-wrap;   /* Opera 7 */
	white-space: pdre-wrap;      /* CSS3 */
	word-wrap: break-word;      /* IE 5.5+ */
	line-height: 2em;
	overflow:hidden;
}

table {
	border-collapse: collapse;
	border-spacing:0;
}

th {
	font-weight: normal;
	text-align: left;
	vertical-align: middle;
}

td {
	vertical-align: middle;
}

input {
	font-family: "メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","Lucida Grande","Lucida Sans Unicode",Arial,Verdana,sans-serif;
   -webkit-font-smoothing: antialiased;
}


/*------------------------------------------
---------- 汎用クラス---------
---------------------------------------*/

.redTXT {
  color: red;
  font-weight: bold;
}

.dsp-pc {
	display: block;
}

.dsp-pc-tb {
	display: block;
}

.dsp-tb {
	display: none;
}

.dsp-sp {
	display: none;
}

.aligncenter {
	text-align: center;
	display: block;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 20px;
}

.aligncenter.mgb0 {
	margin-bottom: 0px;
}

.alignright {
	text-align: right;
}

img.alignright {
	display: inline-block;
	float: right;
	margin-left: 20px;
	margin-bottom: 20px;
	width: 40%;
}

.alignleft {
	text-align: left;
}

img.alignleft {
	display: inline-block;
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
	width: 32%;
}

.red {
	color: #e32400;
}


.btn {
	width: auto;
	clear: both;
	float: right;
	margin-bottom:20px;
}

.btn.mgb0 {
	margin-bottom:0px;
}

.btn.mgb10 {
	margin-bottom:10px;
}

.btn.mgb20 {
	margin-bottom:20px;
}



.btn a {
	display: block;
	padding-left:15px;
	padding-right:10px;
	padding-top:15px;
	padding-bottom:15px;
	margin:0px;
	line-height: 1em;
	-webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
	transition: all 0.5s;
	text-decoration: none;
	font-size:16px;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
	position: relative;
}

.btn a:link {
	color: #FFFFFF;
	background-color: #282828;
}

.btn a:visited {
	color: #FFFFFF;
	background-color: #282828;
}

.btn a:hover {
	color: #FFFFFF;
	background-color: #e60012;
}

.btn a:after {
	font-family: 'FontAwesome';
	content: "\f138";
	color: #ffffff;
	margin-left: 10px;
	font-size:18px;
	display:block;
	text-align: right;
	float: right;
}

.btn_center {
	float: none;
	margin-right:auto;
	margin-left:auto;
	width: 52%;
	margin-bottom:30px;
}

.btn-contact {
	width: 63%;
}

.btn_center a {
	display: block;
	padding-left:15px;
	padding-right:15px;
	padding-top:20px;
	padding-bottom:20px;
	margin:0px;
	line-height: 1em;
	-webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
	transition: all 0.5s;
	text-decoration: none;
	/* font-size:23px; */
	font-size:20px;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
}

.btn_center a:link {
	color: #FFFFFF;
	background-color: #282828;
}

.btn_center a:visited {
	color: #FFFFFF;
	background-color: #282828;
}

.btn_center a:hover {
	color: #FFFFFF;
	background-color: #e60012;
}

.btn_center a:after {
	font-family: 'FontAwesome';
	content: "\f138";
	color: #ffffff;
	margin-left: 10px;
	font-size:25px;
	display:block;
	text-align: right;
	float: right;
}

.btn-red a:link {
	color: #FFFFFF;
	background-color: #d81c1c;
}

.btn-red a:visited {
	color: #FFFFFF;
	background-color: #d81c1c;
}

.btn-red a:hover {
	color: #FFFFFF;
	background-color: #282828;
}


.box-img-right {
	margin-bottom: 30px;
}

.box-img-right .text {
	width: 50%;
	float: left;
}

.box-img-right .img {
	width: 50%;
	float: right;
}

.box-img-right .text p {
	margin-right: 20px;
}


.box-img-left {
	margin-bottom: 30px;
}

.box-img-left .text {
	width: 50%;
	float: right;
}

.box-img-left .img {
	width: 50%;
	float: left;
}

.box-img-left .text p {
	margin-left: 20px;
}


.box {
	background-image: url(../images/page/bg-dot.jpg);
	background-repeat: repeat;
	padding: 20px;
	margin-bottom:30px;
}

.banner {
	width: 730px;
	/* width: 999px; */
	clear: both;
	padding-bottom: 0px;
	/* margin-bottom: 30px; */
	margin: 0 auto 30px auto;
}
.banner ul {
	width: auto;
	font-size:0;
	justify-content: space-between;
  display: flex;
}

.banner li {
	width: 230px;
	/* width: 319px; */
	display:inline-block;
	/* margin-right: 20px; */
}

x.banner li:nth-child(even) {
	xmargin-right: -30px;
}

.banner li:last-child {
	margin-right: 0px;
}

.mgt10 {
	margin-top: 10px;
}


.mgt20 {
	margin-top: 20px;
}

.mgt30 {
	margin-top: 30px;
}

.mgb10 {
	margin-bottom: 10px;
}

.mgb20 {
	margin-bottom: 20px;
}

.mgb30 {
	margin-bottom: 30px;
}

.pdb10 {
	padding-bottom: 10px;
}

.pdb20 {
	padding-bottom: 20px;
}

.pdb30 {
	padding-bottom: 30px;
}

.indent01 {
	text-indent: -1em;
	padding-left: 1em;
}

/*--------------------------
---------- HEADER ---------
--------------------------*/
header {
	width: 100%;
	-webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
	transition: all 0.5s;
	z-index:100;
	position: relative;
	margin-bottom: 20px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #e4e4e4;
}


#logo {
	margin: 0px;
	line-height: 1em;
	overflow: hidden;
	padding-right: 0px;
	padding-left: 0px;
	padding-top: 55px;
	width: 180px;
	float: left;
	height: 92px;
}


#logo img {
	-webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;

}

#header-box {
	width: 1000px;
	margin-right: auto;
	margin-left: auto;
	height: 200px;
}


#header-box .left {
	float: left;
	width: 800px;
	height: 200px;
}

#header-box .right {
	float: right;
	width: 200px;
	height: 200px;
}


#header-contact-box {
	padding: 10px;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #e4e4e4;
	height: 180px;
}

#header-contact-box img {
	vertical-align: top;
}

#header-contact-box p {
	line-height: 1em;
	margin: 0px;
	padding: 0px;
}

#header-tel {
	line-height: 1em;
	padding: 0px;
	vertical-align: top;
	overflow: hidden;
	margin: 0px;
}


#sub-menu {
	display: block;
	vertical-align: top;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #e4e4e4;
	margin-top: 10px;
	font-size:0;
	padding: 0px;
}

#sub-menu li {
	display: inline-block;
	line-height: 1em;
	margin: 0px;
	padding: 0px;
}

#sub-menu li:last-child {
	border-left:solid 1px #e4e4e4;
}

#sub-menu li img {
	vertical-align: top;
}

#sub-menu a {
	text-decoration: none;
	line-height: 1em;
}

#mobile-header {
	display: none;
}

.pc02 {
	display: none;
}

/*------------------------------------
---------- グローバルナビ ---------
------------------------------------*/


#menu-box {
	width: 580px;
	background-color: #ffffff;
	float: right;
	height: 200px;
}

#menu {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	display:table;
	table-layout:fixed;
	height: 200px;
	vertical-align: middle;
}

#menu li {
	background-repeat: no-repeat;
	font-size: 14px;
	text-align: center;
	display: table-cell;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #e4e4e4;
	height: 200px;
	vertical-align: middle;
}

#menu .navi_on {
	xborder-right-color: #88c33e;
}

#menu .navi_off {
	xborder-right-color: #88c33e;
}

#menu li:first-child {
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #e4e4e4;
}

#menu li a {
	width: 100%;
	display: block;
	opacity: 1.0;
	-webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
	text-align: center;
	color: #565656;
	text-decoration: none;
	padding-top: ;
	padding-bottom: ;
	background-color: #ffffff;
	height: 138px;
	vertical-align: middle;
	padding-top: 62px;
}

#menu li a span {
	display: block;
	font-size: 13px;
	line-height: 1em;
}

#menu li a .en {
	font-weight: bold;
	margin-bottom: 10px;
	color: #3c3c3c;
}

#menu li a .jp {
	font-size: 12px;
	color: #565656;
	margin-bottom: 23px;
}


#menu li a i {
	font-size: 24px;
	line-height: 1em;
	color: #e60012;
}

#menu li a:hover {
	background-color: #fff0f1;
	color: #111111;
}

#menu .navi_on a:link {
	background-color: #fff0f1;
	color: #565656;
	background-image: none;
}

#menu .navi_on a:visited {
	background-color: #fff0f1;
	color: #565656;
}
#menu .navi_on a:hover {
	background-color: #fff0f1;
	color: #565656;
}





/*------------------------------------
---------- スライドメニュー ---------
------------------------------------*/

.sb-slidebar {
	background-color: #222222; /* Background colour. */
	color: #e8e8e8; /* Text colour. */
	overflow-x: hidden;
	line-height: 1em;
}

.sb-slidebar a {
	color: #FF5B5B;
	text-decoration: none;
	line-height: 1em;
}

.sb-slidebar a:hover {
	color: #FF0000; /* Link hover colour. */
	text-decoration: underline;
}

/* Main Menu */
.sb-menu { /* Apply to <ul> or <ol>. */
	padding: 0;
	margin: 0;
	list-style-type: none;
}

.sb-menu li {
	width: 100%;
	padding: 0;
	border-top: 1px solid rgba(255, 255, 255, 0.1); /* Will lighten any background colour you set. */
	border-bottom: 1px solid rgba(0, 0, 0, 0.1); /* Will darken any background colour you set. */
	line-height: 1em;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0px;
	margin-left: 0;
}

.sb-menu > li:first-child {
	border-top: none; /* Removes top border from first list item.. */
}

.sb-menu > li:last-child {
	border-bottom: none; /* Removed bottom border from last list item. */
}

.sb-menu li.last {
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.sb-menu li.space {
	border: none;
}

.sb-menu li a {
	width: 100%; /* Makes links full width. */
	display: inline-block;
	padding: 1em; /* Creates an even padding the same size as your font. */
	color: #f2f2f2;
	line-height: 1em;
	text-decoration: none;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	overflow:visible;
}

.sb-menu li a:hover {
	text-decoration: none;
	background-color: rgba(255, 255, 255, 0.05); /* Will lighten any background colour you set. */
}

/* Borders */
.sb-left .sb-menu li a {
	border-left: 3px solid transparent;
}

.sb-left .sb-menu li a:hover {
	border-left: 3px solid; /* Removes transparent colour, so border colour will be the same as link hover colour. */
}

.sb-left .sb-menu li .hover {
	border-left: 3px solid; /* Removes transparent colour, so border colour will be the same as link hover colour. */
}

.sb-right .sb-menu li a {
	border-right: 3px solid transparent;
}

.sb-right .sb-menu li a:hover {
	border-right: 3px solid; /* Removes transparent colour, so border colour will be the same as link hover colour. */
}

.sb-right .sb-menu li .hover {
	border-right: 3px solid; /* Removes transparent colour, so border colour will be the same as link hover colour. */
}


/* Left */

.sb-slidebar.sb-left {
  -webkit-overflow-scrolling: touch;
}

.sb-menu li .sb-open-right, .sb-menu li small {
	display: inline-block;
	padding: 14px;
}

.sb-menu li img {
	margin: 14px;
}


/*------------------------------------
---------- レイアウト ---------
------------------------------------*/
#bg-box {
	background-color: #FFFFFF;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}

#wrapper {
	margin-right: auto;
	margin-left: auto;
	width: 1000px;
	padding-bottom: 40px;
}

#right {
	float: right;
	/* width: 730px; */
	max-width: 730px;
  width: 73%;
	padding-bottom: 0px;
}

#main-contents {
	clear: both;
}

#left {
	float: left;
	/* width: 240px; */
	max-width: 240px;
  width: 24%;
	margin-right: 30px;
	padding-bottom: 20px;
}

/*------------------------------------
---------- サイドバー ---------
------------------------------------*/

#s-banner {
}

#s-banner li {

	margin-bottom: 20px;
}

#s-banner li a {
	border: 1px solid #e4e4e4;
	display: block;
}

#s-contact {
	margin-bottom: 10px;
}

#s-contact-box {
	/* width: 218px; */
	max-width: 218px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-left-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-right-color: #e4e4e4;
	border-bottom-color: #e4e4e4;
	border-left-color: #e4e4e4;
	padding-right: 10px;
	padding-left: 10px;
	padding-top: 10px;
}

#s-contact h4 {
	margin-bottom: 0px;
	padding: 0px;
	line-height: 1em;
}

#s-contact dl {

}

#s-contact dt {
	margin-bottom: 10px;
	margin-top: 10px;
}

#s-contact dd {
	font-size: 12px;
	margin-bottom: 10px;
	color: #000000;
}

#s-contact dd:last-child {
	margin-bottom: 10px;
}

#s-contact dd img {
	margin-bottom: 10px;
	vertical-align: top;
}

#s-contact dd img.mgb0 {
	margin-bottom: 0px;
}

#s-contact dd a:link {
	text-decoration: none;
}

#s-contact dd a:visited {
	text-decoration: none;
}

#s-contact dd a:hover {
	text-decoration: underline;
}

#s-contact .btn-box {
	padding-right: 0px;
	padding-left: 0px;
	padding-bottom: 10px;
}

#s-contact .btn {
	float: none;
	/* margin-bottom:0px; */
	margin-bottom: 10px;
	width: 100%;
}

#s-contact .btn span {
	font-size:16px;
	padding-top: 3px;
}

#s-contact .btn i {
	font-size:20px;
}



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

footer {
	clear: both;
	width: 100%;
	float: none;
	margin: 0px;
	position:relative;
}


#footer-menu {
	width: 100%;
	padding-top: 20px;
	padding-bottom: 10px;
	background-image: url(../images/common/footer-menu-bg.jpg);
	background-repeat: repeat;
}

#footer-menu-box {
	width: 950px;
	margin-right: auto;
	margin-left: auto;
	display:table;
	xtable-layout: fixed;
	padding-left: 50px;
}

#footer-menu ul {
	display:table-cell;
	vertical-align:top;
	xpadding-left: 1em;

}

#footer-menu ul li ul {
	display:block;
	padding-top: 10px;
	margin-left: 1em;
	padding-left: 0;
}

#footer-menu li {
	font-size:13px;
	margin-bottom: 10px;
	line-height: 1em;
	text-align: left;
}

#footer-menu li:before {
	font-family: 'FontAwesome';
	content: "\f0da";
	color: #111111;
	margin-right: 5px;
	font-size:14px;
}

#footer-menu ul li ul li:before {
	font-family: 'FontAwesome';
	content: "\f105";
	color: #111111;
	margin-right: 5px;
	font-size:14px;
}

#footer-menu a:link {
	color: #343434;
	text-decoration: none;
}
#footer-menu a:visited {
	color: #343434;
	text-decoration: none;
}

#footer-menu a:hover {
	color: #e60012;
	text-decoration: none;
}

#footer-contact-box {
	background-color: #ffffff;
	width: 100%;
}

#footer-contact {
	font-style: normal;
	padding-top:20px;
	width: 1000px;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 10px;
	display: block;
}


#footer-contact .left {
	float: left;
	width: 240px;
	/* padding-top: 30px; */
	margin-right: 30px;
}

#footer-contact .left .inner {
	text-align: center;
}

#footer-contact .left h4 {
	margin-bottom: 10px;
}

#footer-contact .left p {
	line-height: 1.5em;
	margin-bottom: 10px;
	font-size: 12px;
	text-align: left;
	margin-left: 12%;
}

#footer-contact .right {
	float: right;
	width: 730px;
}

#footer-contact .right dl {

}

#footer-contact .right dt {
	font-size: 12px;
	border-left-width: 4px;
	border-left-style: solid;
	border-left-color: #e60012;
	padding-left: 10px;
	width: 716px;
	margin-bottom: 10px;
}

#footer-contact .right dt .left {
	display: block;
	float: left;
	width: auto;
	padding-top: 30px;
	margin: 0px;
}

#footer-contact .right dt .right {
	display: block;
	float: right;
	width: auto;
	padding-top: 5px;
}

#footer-contact .right dt .text {
	display: block;
	margin-bottom: 10px;
}

#footer-contact .right dd {
	margin-bottom: 10px;
}

#footer-contact .right dd a:hover img {
	opacity: 1.0;
}

#copy {
	width: 100%;
	background-color: #e60012;
	clear: both;
	text-align: right;
}

#copy span {
	display: block;
	width: 1000px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 10px;
	padding-bottom: 10px;
	font-size: 13px;
	color: #FFFFFF;
}

x#pageTop {
	xposition: absolute;
	xtop: 20px;
	position: fixed;
	bottom: 350px;
	right: 20px;
	z-index: 1000;
}

#pageTop {
	display: none;
	position: fixed;
	bottom: 20px;
	right: 20px;
}

#pageTop a {
	display: block;
	width: 62px;
	height: auto;
	text-align: center;
	color: #ffffff;
	font-size: 30px;
	text-decoration: none;
	line-height:1em;
	background:#000000;
	opacity: 0.5;
	-webkit-transition: all 0.35s ease-in-out;
    -moz-transition: all 0.35s ease-in-out;
	transition: all 0.35s ease-in-out;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
	padding-top: 10px;
	padding-bottom: 10px;
}

#pageTopp a:hover {
	opacity: 0.2;
}

#pageTop a span {
	display: block;
	font-size: 13px;
	line-height: 1em;
	color: #FFFFFF;
	opacity: 0.7;
}

#pageTop a i {
	color: #FFFFFF;
}

#pageTopp a:hover span {
	opacity: 0.2;
}

#pageTopp a:hover i {
	opacity: 0.2;
}

#sp-contact {
	display: none;
}


/****************************
max-width: 1020px
*****************************/

@media all and (max-width: 1020px) {

h1 span {
	width: auto;
	padding-left: 10px;
}
/*------------------------------------------
---------- 汎用クラス---------
---------------------------------------*/

.btn_center {
	float: none;
	margin-right:auto;
	margin-left:auto;
	width: 70%;
	margin-bottom:30px;
}

.banner {
	width: 100%;
}


.banner li {
	width: 32%;
	margin-right: 2%;
}

.banner li:last-child {
	margin-right: 0px;
}

.banner li a {
	display:block;
}

.box-img-right {
	margin-bottom: 20px;
}

/*--------------------------
---------- HEADER ---------
--------------------------*/
header {
	width: 100%;
}

#header-wrapper {
	padding-left:10px;
	padding-right:0px;
}

#header-box {
	width: 100%;

}

#header-box .left {
	width: 81%;
}

#header-box .right {
	width: 19%;
}

#logo {
	width: 30%;
	height: 145px;
}

#logo img {
	height: auto;
	width: auto;

}

#header-contact-box {
	width: auto;
	border: none;
}

#sub-menu {
	width: 100%;
	padding-top:5px
}

#sub-menu li {
	width: auto;
	display: block;
	margin-bottom:5px;
}
#sub-menu li:last-child {
	border:none;
}

.pc {
	display: none;
}
.pc02 {
	display: block;
}

/*------------------------------------
---------- グローバルナビ ---------
------------------------------------*/
#menu-box {
	width: 70%;
}

#menu {
	width: 100%;

}

/*------------------------------------
---------- レイアウト ---------
------------------------------------*/

#bg-box {
	width: auto;
	padding-right: 0px;
	padding-left: 0px;
}

#wrapper {
	width: auto;
	padding-right: 10px;
	padding-left: 10px;
}

#right {
    /* width: 100%; */
		width: 74%;
    margin-left: -270px;
}

#main-contents {
	/* margin-left: 270px; */
}

/*------------------------------------
---------- footer ---------
------------------------------------*/
#footer-menu {
	width: auto;
	padding-right: 10px;
	padding-left: 10px;
}

#footer-menu-box {
	width: 95%;
	margin-right: 0px;
	margin-left: 0px;
	padding-left: 5%;
}

#footer-contact {
	width: 100%;
}

#footer-contact .left {
	float: left;
	width: 26%;
	margin-right: 0px;
}

#footer-contact .left p {
	margin-left: 10%;
}

#footer-contact .right {
	width: 74%;
}

#footer-contact .right dl {
	padding-right: 10px;

}

#footer-contact .right dt {
	font-size: 12px;
	width: auto;
}

#footer-contact .right dt .left {
	display: block;
	float: left;
	width: 62%;
	padding-top: 5px;
}

#footer-contact .right dt .right {
	display: block;
	float: right;
	width: 36%;
}

#copy {
	width: auto;
	padding-left: 10px;
	padding-right: 10px;

}

#copy span {
	width: 100%;
}


}

/****************************
max-width: 860px
*****************************/

@media all and (max-width: 860px) {
#menu li {
	font-size: 13px;
}
}

/****************************
max-width: 768px
*****************************/

@media all and (max-width: 768px) {

body {
	border: none;
  }

img{
	width:100%;
	vertical-align: top;
}

.dsp-pc {
	display: none;
}

.dsp-tb {
	display: block;
}

.dsp-sp {
	display: none;
}

.banner {
	margin-bottom:20px;
	clear:both;
}

.banner .dsp-pc {
	display: inline-block;
}

/*--------------------------
---------- HEADER ---------
--------------------------*/

header {
	position: fixed;
	xleft:50%;
	xmargin-left:-50%;
	z-index:100;
	height: 53px;
	padding-bottom: 0px;
	width: 100%;
	margin:0px;
	top:0px;
	background: rgba(255, 255, 255, 0.96);
	border: none;
}

#header-box {
	position: relative;
	width: 100%;
	height: 53px;
	background-image:none;
	padding-bottom: 0px;
	margin:0px;
}

#header-box .left {
	width: 40%;
	height: auto;
}

#header-box .right {
	width: 60%;
	padding-top: 0px;
	height: auto;
}

#header-contact-box {
	height: auto;
}

h1,#sub-menu,#header-tel,#menu-box,#header-btn {
	display:none;
}

#logo {
	margin-top: 5px;
	padding-top:0px;
	height: auto;
	width:32%;

}

#mobile-header {
	display: block;
	top:5px;
	right:10px;
	position:absolute;
	z-index:100;
}


#mobile-header li {
	display: inline;
}

#mobile-header li a {
	line-height: 1em;
	display: inline-block;
	text-decoration: none;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border: 1px solid #cccccc;
	text-align: center;
	z-index: 1100;
	-webkit-font-smoothing: antialiased;
	cursor: pointer;
	font-size: 14px;
	-webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}

#mobile-header li a:link {
	color: #111111;
	background-color: #FFFFFF;
}

#mobile-header li a:visited {
	color: #111111;
	background-color: #FFFFFF;
}

#mobile-header li a:hover {
	color: #ffffff;
	background-color: #111111;
}

#mobile-header li a i {
	-webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}

#mobile-header li a:link i {
	color: #111111;
}

#mobile-header li a:visited i {
	color: #111111;
}

#mobile-header li a:hover i {
	color: #ffffff;
}



#btn-tel,#btn-mail,#btn-menu {
	display: block;
}

#btn-tel a {
	padding-top: 2px;
	padding-right: 9px;
	padding-bottom: 2px;
	padding-left: 9px;
}

#btn-mail a {
	padding-top: 2px;
	padding-right: 8px;
	padding-bottom: 2px;
	padding-left: 8px;
}

#btn-menu a {
	padding-top: 2px;
	padding-right: 8px;
	padding-bottom: 2px;
	padding-left: 8px;
}

#btn-tel a i,#btn-mail a i,#btn-menu a i {
	margin-right: 0px;
	font-size: 25px;
	line-height: 1em;
	display: block;
	vertical-align: bottom;
	margin-bottom:2px;
}

#btn-tel span,#btn-mail span,#btn-menu span {
	display: block;
	font-size: 10px;
	line-height: 1em;
}

/*------------------------------------
---------- レイアウト ---------
------------------------------------*/

#bg-box {
	margin-left:0px;
	margin-right:0px;
	margin-bottom: 0px;
	padding-top: 0px;
}

#right {
    /* width: 100%; */
		width: 65%;
    margin-left: 0px;
}

#main-contents {
	margin-left: 0px;
	padding-bottom:0px;

}

#left {
	width:100%;
	margin-right: 0px;
	float:none;
	padding-bottom:0px;
}

#left #s-contact {
	display:none;
}

#left #s-banner li {
	display:inline-block;
	/* width: 32%; */
	width: 49%;
	margin-right: 0%;
	font-size:0;
	vertical-align:top;
	/* margin-bottom:0px; */
	margin-bottom:5px;
}

#left #s-banner li:nth-child(5) {
	margin-right: 0px;
}


#left #s-banner li a {
	display:block;
}

#left #s-banner .dsp-pc {
	display:inline-block;
}

#left #s-banner .banner-seal-ext .dsp-pc {
	display: none;
}

#left #s-banner .banner-seal-ext {
	display: block;
	width:100%;
	margin-bottom:20px;
}

#left #s-banner .dsp-pc.access {
	display:none;
}

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

#footer-menu ul {
	text-align: left;
	padding-left: 0;
}

#footer-menu li {
	margin-left: 0px;
	margin-right: 10px;
	font-size:12px;
	line-height:1.3em;

}

#footer-contact .left {
	padding-top:30px;
}

#footer-contact .left h4 img {
	width: 50%;
}

#footer-contact .left p {
	margin-right: 10%;
}

#copy {
	text-align: center;
}

}

/****************************
max-width: 480px
*****************************/
@media all and (max-width: 480px) {

#left {
	display: none;
}

#wrapper {
	padding-bottom: 10px;
}

#right {
	width: 100%;
	padding-bottom: 0px;
}

#main-contents {
	padding: 0px;
	border: none;
}

p {
	line-height: 1.5em;
}

.aligncenter {
	margin-bottom: 10px;
}

img.alignright {
	margin-left: 10px;
	margin-bottom: 10px;
}

img.alignleft {
	margin-right: 10px;
	margin-bottom: 10px;
}

.btn {
	width: 100%;
	float: none;
	margin-bottom:20px;
}

.btn a {
	padding-top:20px;
	padding-bottom:20px;
}

.btn a:after {
	font-size:23px;
}

.btn_center {
	width: 100%;
	margin-bottom:20px;
}

.btn_center a {
	padding-top:20px;
	padding-bottom:20px;
	font-size:20px;
}

.btn-contact a {
	font-size:16px;
}

.btn_center a:after {
	/* font-size:23px; */
	font-size:20px;
}

.box-img-right {
	margin-bottom: 20px;
}

.box-img-right .text {
	width: 100%;
	float: none;
}

.box-img-right .img {
	width: 100%;
	float: none;
}

.box-img-right .text p {
	margin-right: 0px;
}

.box-img-left {
	margin-bottom: 20px;
}

.box-img-left .text {
	width: 100%;
	float: none;
}

.box-img-left .img {
	width: 100%;
	float: none;
}

.box-img-left .text p {
	margin-left: 0px;
}

.box {
	padding: 10px;
	margin-bottom:20px;
}

.banner {
	padding-bottom: 0px;
	margin-bottom:10px;
}

.banner ul {
	padding-right: 0px;
	width: 100%;
	padding-bottom: 0px;
}

.banner li {
	height: auto;
	width: 100%;
	float: none;
	margin-bottom:10px;
	display: block;
}

.banner li {
	margin-right: 0px;
	margin-bottom:10px;
}

.banner li span.dsp-sp{
	display:block;
	border-bottom:solid 1px #cccccc;
	border-left:solid 1px #cccccc;
	border-right:solid 1px #cccccc;
}

.banner .dsp-pc {
	display: none;
}

.dsp-pc-tb {
	display: none;
}

.dsp-tb {
	display: none;
}

.dsp-sp {
	display: block;
}

/*--------------------------
---------- HEADER ---------
--------------------------*/

#mobile-header {
	xright:-5px;
}

#mobile-header {
	right:5px;
}

#logo {
	margin-top:10px;
	width:50%;

}
#logo img {
	width:100%;
}

/*------------------------------------
---------- サイドバー ---------
------------------------------------*/

#left #s-contact {
	display:block;
}

#left #s-banner li {
	display:block;
	width: 100%;
	margin-right: 0px;
	margin-bottom:10px;
}

#left #s-banner .dsp-pc {
	display:none;
}

#s-contact-box {
	width: 100%;
	max-width: 100%;
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

#s-contact dd {
	font-size: 14px;
	text-align:center;
}

#s-contact .btn-box {
	padding-bottom: 0px;
}

#s-contact .btn {
	margin-bottom:10px;
}

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

#footer-menu {
	padding-top: 10px;
	background-color: #1a71d4;
}

#footer-menu-box {
	width: 98%;
	padding-left: 2%;
}

#footer-menu ul {
	display:inline;
}

#footer-menu li {
	display:inline-block;
	margin-bottom: 5px;

}

#footer-contact {
	display: none;
}

#copy {
	text-align: center;
}

#pageTop {
	bottom: 10px;
	right: 10px;
}
#pageTop a {
	width: 50px;
	font-size: 26px;
	padding-top: 7px;
	padding-bottom: 7px;
}

#pageTop a span {
	font-size: 13px;
}

}

/****************************
max-width: 320px
*****************************/
@media all and (max-width: 320px) {

#logo {
	margin-top:13px;
}

.btn-contact a {
	font-size:14px;
}

}
