p {
	padding: 0;
}
img {
	max-width: 100%;
}
.only-sp {
	display: none;
}
@media print {
	.pagecont{
		display:none;
	}
	.header{
		display:none !important;
	}
	#page_top{
		display:none;
	}
}
@media screen and (max-width: 768px) {
	.only-pc {
		display: none;
	}
	.only-sp {
		display: block;
	}
}
.text_red{
	color: #e12937;
}
.font_small{
	font-size: 14px;
}
a.anchor{
	display: inline-block;
    padding-top: 108px;
    margin-top: -108px;
}
div.anchor{
	display: inline-block;
    padding-top: 108px;
    margin-top: -108px;
}
/*------------header--------------*/
#header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9;
	background: rgba(255,255,255,1);
	font-weight: bold;
	height: 108px;
}
#header.tophd {
	background: none;
}
#header.tophd .hdlogo {
	display: none;
}
.hdlogo:hover img {
	opacity: 0.5;
}
.header {
	display: flex;
	justify-content: space-between;
	position: relative;
	align-items: flex-start;
}
.hdleft {
	width: 400px;
	flex-shrink: 0;
	padding: 13px 0 15px 20px;
	box-sizing: border-box;
}
.hdleft a{
	color: black;
}
.hdtxt {
	font-size: 14px;
	margin: 0;
	padding: 0;
	margin-bottom: 3px;
}
.hdlogo {
	padding: 5px 0 0 0px;
	font-size: 19px;
	position: relative;
}
.hdlogo span {
    position: absolute;
    right: 12px;
    bottom: -27px;
    font-size: 13px;
}
.hdlogo img {
	vertical-align: middle;
	margin-right: 15px;
}
.hdright {
	display: flex;
	height: 108px;
}
.hdlink {
	background: #007ed0;
	width: 200px;
}
.hdlink a {
	display: block;
	text-align: center;
	color: #fff;
	text-decoration: none;
	line-height: 1.4;
	padding: 6px 0 6px 20px;
}

.hdlink a + a {
	border-top: 1px solid #075fb1;
}
.hdlink a.link01 {
	background: url(../images/common/ico_hd01.png) 20px center no-repeat;
}
.hdlink a.link02 {
	padding-top: 10px;
	background: url(../images/common/ico_hd02.png) 20px center no-repeat;
	line-height: 2.7;
}
.hdcontact {
	width: 200px;
	background: #323232;
}
.hdcontact .tel {
	text-align: center;
	font-size: 15px;
	color: #fff;
	padding: 12px 0 8px;
	border-bottom: 1px solid #434343;
}
.hdcontact .hdbtn a {
	display: block;
	text-decoration: none;
	text-align: center;
	padding: 3px 0 2px;
	font-weight: normal;
}
.hdcontact .hdbtn a span {
	display: inline-block;
	font-size: 14px;
	color: #fff;
	padding: 0 20px;
	background: url(../images/common/ico_arrow01.png) right center no-repeat;
	transition: all 0.5s;
}
.hdlogo_top{
	display: none;
}
/*
.hdcontact .hdbtn a span:hover{
	color: #D00;
}*/
.hdcontact a img{
	padding: 0 3px 0 3px;
}
.header_moderate{
		display: none;
	}

@media all and (-ms-high-contrast: none){
  .hdcontact a img{
	padding: 0 19px 0 10px;
}
}


.navbar-toggle {
	display: none;
}
.header_moderate{
		display: block;
	}
#header{
	position: fixed;
    right: 0;
    top: 0;
}

.gnavi a:hover{
	opacity: 0.4;
	color: black;
}	
.hdlink a.link01:hover{
	opacity: 0.4;
	color: white;
}
.hdlink a.link02:hover{
	opacity: 0.4;
	color: white;
}
.hdcontact .tel:hover{
	transition: 0.7s;
}
.hdcontact a:hover{
	opacity: 0.4;
	color: white;
	text-decoration: none;
}
.hdcontact .tel:hover{
	opacity: 0.4;
	color: white;
	text-decoration-line: none;
}
.hdleft a:hover {
	opacity: 1;
    color: black;
	text-decoration-line: none;
}
.hdcontact .hdbtn a span:hover {
	opacity: 0.4;
    color: white;
}
	
@media screen and (max-width: 1600px) {
	#header {
		background: #fff;
		height: 84px;
	}
	#header.tophd {
		background: #fff;
	}
	#header.tophd .hdlogo {
		display: block;
		padding-left: 14px;
	}
	/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v7.0.29,
* Autoprefixer: v9.7.6
* Browsers: last 4 version
*/

.header {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: fixed;
    background-color: #fff;
    width: 100%;
    padding-top: 25px;
    height: 108px;
    padding-bottom: 25px;
}.example {
    display: -ms-grid;
    display: grid;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    background: -webkit-gradient(linear, left top, left bottom, from(white), to(black));
    background: -o-linear-gradient(top, white, black);
    background: linear-gradient(to bottom, white, black);
}
	.hdleft {
		width: fit-content;
		padding: 10px;
		box-sizing: border-box;
		padding-top: 0;
	}
	.hamburger{
		padding-top: 26px;
	}
	.navbar-toggle {
		display: none;
	}
	.hdleft {
	padding-top: 9px;
}
	.hdlogo span {
    right: 1px;
    bottom: -23px;
}
	.hdleft {
    padding-left: 25px;
}

}
@media screen and (max-width: 768px) {
	#header {
		background: #fff;
	}
	.hdlogo {
		padding: 0px 0 0 0;
		font-size: 13px;
	}
	.hdlogo img {
		display: initial;
		margin-right: 8px;
		width: 73%;
	}
	.header {
    padding-top: 0px;
    height: 71px;
    padding-bottom: 0;
}
	.hamburger {
    padding-top: 8px;
    padding-right: 16px;
}

	
	.hdtxt {
		display: none;
	}
}

/*------------pullmenu --------------*/

.pullmenu {
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	z-index: 999;
	background: #fff;
	display: none;
	text-align: center;
	color: white;
}
.pullmenu .list li {
	border-top: 1px solid #ffffff;
    background-color: #328ed8;
}
.pullmenu .list .link_red {
	border-top: none;
}
.pullmenu .list a {
	display: block;
	font-weight: bold;
	padding: 10px;
	font-size: 14px;
	text-decoration: none;
	color: white;
}
.pullmenu .list .link_red a{
	background: #c83e48 url("../images/common/right.png") 16px center no-repeat;
	 background-position: right 15px center;
	color: #fff;
	border-top: 1px solid #fff;
}
.pullmenu .list .link_blue a{
	background: #3b65c5 url(../images/common/right.png) 16px center no-repeat;
	 background-position: right 15px center;
	color: #fff;
	border-top: 1px solid #fff;
}
.pullmenu .list a.link01 {
	background: #007ed0 url(../images/common/right.png) 16px center no-repeat;
	background-size: 13px;
	color: #fff;
	padding-left: 30px;
	border-top: 1px solid #fff;
}
.pullmenu .list a {
	background: #007ed0 url(../images/common/right.png) 16px center no-repeat;
	background-position: right 15px center;
    color: #fff;
    padding-left: 30px;
    border-top: 1px solid #fff;   
}
.pullmenu .list a.bottom_bold {
    border-bottom: 4px solid #fff;   
}
.pullmenu .list a.bottom_red {
    border-bottom: 1px solid #c83e48;   
}

.pullmenu .list .accshow_h a {
	background: #ffffff url(../images/common/right_b.png) 16px center no-repeat;
	background-position: right 15px center;
	color: #007ed0;
	border-top: 1px solid #007ed0;
}

.pullmenu .list a.link02 {
    color: #c83e48;
    background-color: white;
}


.pullmenu .menubtn {
	display: flex;
	justify-content: space-between;
	margin-top: 20px;
	padding: 0 15px;
}
.pullmenu .menubtn p {
	width: 48%;
}
.pullmenu .menubtn a {
	display: block;
	background: #323232;
	color: #fff;
	text-align: center;
	padding: 15px 10px;
	font-size: 13px;
	font-weight: bold;
	text-decoration: none;
}
.pullmenu .menubtn a img {
	vertical-align: middle;
}
.pullmenu ul li{
	position: relative;
}










/*------------gnavi --------------*/
.gnavi {
	background: #fff;
	display: -webkit-box;display: -ms-flexbox;display: flex;
}
.gnavi li {
	width: 150px;
}
.gnavi li + li {
	border-left: 1px solid #c4c4c4;
}
.gnavi a {
	display: block;
	text-align: center;
	text-decoration: none;
	padding: 15px 0 10px;
	font-size: 14px;
	color: #010101;
}
.gnavi a span {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 15px;
	height: 41px;
}
.pullmain {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	z-index: 9;
	padding: 35px 0 100px;
	border-top: 1px solid #c4c4c4;
	border-bottom: 1px solid #c4c4c4;
	background-color: #fff;
}
.pullpanel {
	display: flex;
	justify-content: space-between;
}
.pullpanel .pullbox {
	width: 350px;
}
.pullpanel .pullbox .tit a{
	text-align: left;
	display: block;
	padding: 15px 0;
	background: url(../images/common/ico_arrow02.png) right center no-repeat;
	font-size: 20px;
	color: #000;
	text-decoration: none;
	border-bottom: 1px solid #007ed0;
}
.pullpanel .pullbox .tit a:hover{
	opacity: 0.35;
}
.pullpanel .pullbox .txt {
	font-size: 15px;
	line-height: 2;
	padding-top: 15px;
}

/*
@media screen and (max-width: 1550px) {
	
	.gnavi a {
    font-size: 14px;
}
	.header_moderate{
		display: block;
	}
	.hdleft {
    width: 168px;
}

	.hdlogo {
    font-size: 16px;
	padding: 5px 0 0 1px;
}
	.hdtxt {
    margin-bottom: 5px;
}
*/	
	
	
	}
@media screen and (max-width: 1220px) {
	.gnavi li {
    width: 128px;
}
	.hdlogo img {
    vertical-align: middle;
    /* margin-right: -7px; */
    margin: auto;
    display: block;
}
	
}


@media screen and (max-width: 999px) {
	.hdlink,.hdcontact  {
    display: none;
}
	.hdright {
    display: none;
}
		.navbar-toggle {
    display: block;
    position: absolute;
    right: 5px;
	top: 5px;
}
	.hamberger_menu_text{
	margin-top: 29px;
    text-align: center;
    color: #0d85d2;
    font-size: 11px;
	}
	.hdlogo_top{
		display: block;
    padding: 0px 0 0 0;
    font-size: 13px;
		position: relative;
		width: 200px;
}
	.hdlogo_top span {
    position: absolute;
    right: 0px;
    bottom: -6px;
    font-size: 11px;
}
	
}

@media screen and (max-width: 768px) {
	.gnavi {
		background: #fff;
		display: flex;
	}
	.hdright{
		margin-right: 59px;		
	}
}
@media screen and (max-width: 999px) {
	
	
	#header_temp{
		display: block;
	}
	.hamburger {
    display: block;
}
	.gnavi a {
    padding: 0;
}
	.gnavi a span {
    margin-bottom: 0;
}
	.header_moderate{
		display: none;
	}
	
	
}
@media screen and (max-width: 1200px) {
	.hdtxt{
		font-size: 11px;
	}
	.hdleft {
    padding-top: 9px;
	padding-left: 16px;
}
	
	/*IEのみに対応*/
	@media all and (-ms-high-contrast: none) {
  .hdleft {
	width: 20%;
	}
}
	/*safariのみに対応*/
_::-webkit-full-page-media, _:future, :root .hdcontact a img {
    padding: 0 6px 5px 0px;
    width: 90%;
}
	
	
	
	.gnavi li {
    width: 83px;
}
	.kasou .hdleft{
		width: 191px;padding-left: 8px;
	}
	.kasou .hdlogo {
    padding: 5px 0 0 1px;
}
	.kasou .hdlogo span {
    bottom: -22px;
    font-size: 11px;
}
	
}





/**************HEADER　リスト部分*************************/

/*ラベル*/
.pullmenu label {
    display: contents;
    font-weight: bold;
    cursor :pointer;
    transition: all 0.5s;
	font-size: 15px;
}


/*チェックは隠す*/
.pullmenu input {
    display: none;
}

/*中身を非表示にしておく*/
.pullmenu .accshow_h {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}

/*クリックで中身表示*/
.cssacc_h:checked + .accshow_h {
    height: auto;
    opacity: 1;
}

.accshow_h p{
	padding-left: 240.5px;
	font-size: 16px;
	font-weight: normal;
}
.accshow_h a{
	color: #007ed0;
}
.jscrollpane.newslist.accbox{
	outline: none 
}

@media screen and (max-width: 768px) {
.accshow_h p {
    padding-left: 0;
	font-size: 17px;
}
	.pullmenu label {
    display: block;
	background: #007ed0 url(../images/common/right_down.png) 16px center no-repeat;
	background-position: right 12px center;
    padding: 9px 0px 9px 20px;
		margin-bottom: 0;
}
	.accshow_h p {
    padding-left: 0;
    font-size: 15px;
}
}















/*------------teaser--------------*/
#teaser {
	height: 550px;
	position: relative;
	margin-top: 99px;
}
#teaser .tit {
	font-size: 39px;
	color: #fff;
	font-weight: bold;
	position: absolute;
	top: 50%;
	left: 85px;
	transform: translateY(-50%);
	z-index: 2;
	line-height: 1.8;
}
#teaser .tit span{
	display: block;
    font-size: 20px;
    line-height: 33px;
}
@media screen and (max-width: 1600px) {
	#teaser {
		margin-top: 77px;
	}
	
	.hdlogo img {
    margin-right: 0;
		width: 216px;
}
	.gnavi a {
    font-size: 12px;
}
	.gnavi li {
    width: 97px;
}
		.gnavi li:last-of-type {
    width: 120px;
}
	.hdlink {
    width: 127px;
}
	.hdcontact {
    width: 166px;
    padding: 0 2px;
}
	.hdlink a.link01 {
    background: url(../images/common/ico_hd01.png) 10px center no-repeat;
}
	.hdlink a.link02 {
    background: url(../images/common/ico_hd02.png) 10px center no-repeat;
}
.gnavi a .header_zikan {
    display: contents;
}
	
	
}
@media screen and (max-width: 999px) {
	.kasou .hdleft {
    width: auto;
}
	.kasou .header_moderate {
    display: none;
}
}


@media screen and (max-width: 768px) {
	#teaser {
		height: 225px;
		position: relative;
		margin-top: 60px;
	}
	#teaser .tit {
		font-size: 21px;
		left: 0;
		text-align: center;
		width: 100%;
		padding: 0 10px;
		box-sizing: border-box;
	}
	.gnavi li {
    width: 15vw;
}
	.gnavi a {
    font-size: 10px;
}
	#header.tophd .hdlogo {
    display: block;
    padding-left: 0;
    width: 39px;
    font-size: 10px;
}
	#header.tophd .hdlogo {
    width: 30px;
}
	.gnavi li + li {
    border-left: none;
}
	
	.gnavi a .header_zikan{
		display: none;
	}
	.hdright{
		height: 100%;
	}
	
	.hdleft {
    padding-top: 9px;
    padding-left: 16px;
    width: auto;
}
	
	
}
@media screen and (max-width: 400px) {
	.hlg01 img{
		    width: 43%;
	}
}

/*------------inner--------------*/

.inner {
	width: 1120px;
	margin: 0 auto;
}

@media screen and (max-width: 1120px) {
	.inner {
		    width: 100%;
		padding: 0 10px;
	}
}




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

#footer {
	background: #373637;
	padding: 0 0 40px;
}
.ftlist {
	display: flex;
	justify-content: end;
	flex-wrap: wrap;
}
.ftlist li {
	padding-left: 30px;
    background: url(../images/common/ico_arrow01.png) 11px center no-repeat;
    width: 20%;
}
.ftlist li a {
	display: block;
	color: #fff;
	font-size: 15px;
}
#footer .link {
	text-align: right;
	margin-top: 10px;
}
#footer .link a {
	display: inline-block;
	color: #fff;
	font-size: 12px;
	padding-left: 10px;
	background: url(../images/common/ico_arrow03.png) 0 center no-repeat;
}
#footer .link a + a {
	margin-left: 40px;
}
.ftlogo {
	text-align: center;
	padding: 30px 0 80px;
}
#copyright {
	font-size: 12px;
	color: #bcbcbc;
	text-align: center;
}
@media screen and (max-width: 768px) {
	#footer {
		padding: 0 ;
	}
	
	#footer .link {
		display: flex;
		justify-content: center;
		text-align: center;
		margin-top: 0px;
	}
	#footer .link a {
		display: inline-block;
		padding-left: 10px;
		margin: 0 10px;
		background: url(../images/common/ico_arrow03.png) 0 center no-repeat;
	}
	#footer .link a + a {
		margin-left: 0;
	}
	.ftlogo {
		text-align: center;
		padding: 20px 0 ;
	}
	.ftlogo img {
		width: 160px;
	}
	.footer_top {
    padding: 10px 0px;
}
	
	.ftlist {
    display: flex;
    flex-wrap: wrap;
	margin-left: 11%;
	margin-bottom: 10px;
}
	.ftlist li {
    width: 50%;
}
	.ftlist li a {
    font-size: 12px;
}
	
	
	
	
	
	
	
	
}





.pagecontact a img:hover{
	opacity: 1;
	display: block;
}
.pagecontact a:hover{
	opacity: 1;
	display: block;
}
.pagecontact {
	position: absolute;
	top: 170px;
	width: 77px;
	right: 100%;
	z-index: 11;
	transition: all 0.5s;
}
.pagevip {
	position: absolute;
	top: 570px;
	width: 77px;
	right: 100%;
	z-index: 5;
	transition: all 0.5s;
}
.pagecont {
	position: fixed;
	top: 0;
	right: -400px;
	z-index: 10;
	background: #fff;
	width: 400px;
	height: 100%;
	transition: all 0.5s;
}
.pagecont .pagebox {
	position: relative;
}
.pagecont.on {
	box-shadow: 0 0 15px rgba(231,231,231,1);
}
.pagecont .title {
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	padding: 55px 0 40px;
	border-bottom: 1px solid #cbcbcb;
}
.pagecont .title .img {
	margin-bottom: 25px;
}
.pagecont .linkbox {
	padding: 44px 30px 40px;
	border-bottom: 1px solid #cbcbcb;
}
.pagecont .linkbox .bnr {
}
.pagecont .linkbox .bnr.bg01 {
	background: url(../images/common/img_link01.png) 0 0 no-repeat;
	background-size: cover;
}
.pagecont .linkbox .bnr.bg01 a {
	background: url(../images/common/ico_link01.png) 35px center no-repeat;
}
.pagecont .linkbox .bnr.bg02 {
	background: url(../images/common/img_link02.jpg) 0 0 no-repeat;
	background-size: cover;
}
.pagecont .linkbox .bnr.bg02 a {
	background: url(../images/common/ico_link02.png) 35px center no-repeat;
}
.pagecont .linkbox .bnr.bg03 {
	background: url(../images/common/img_link03.jpg) 0 0 no-repeat;
	background-size: cover;
}
.pagecont .linkbox .bnr.bg03 a {
	background: url(../images/common/ico_link03.png) 35px center no-repeat;
}
.pagecont .linkbox .bnr.bg04 {
	background: url(../images/common/img_link04.jpg) 0 0 no-repeat;
	background-size: cover;
}
.pagecont .linkbox .bnr.bg04 a {
	background: url(../images/common/ico_link04.png) 35px center no-repeat;
}
.pagecont .linkbox .bnr a {
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	height: 130px;
	position: relative;
}
.pagecont .linkbox .bnr a::before {
	background: url(../images/common/ico_arrow04.png) 0 0 no-repeat;
	width: 13px;
	height: 22px;
	top: 50%;
	right: 30px;
	transform: translateY(-50%);
	content: "";
	z-index: 2;
	position: absolute;
}
.pagecont .linkbox .txt {
	font-size: 15px;
	font-weight: normal;
	padding-top: 10px;
}
.pagecont .tel {
	text-align: center;
	background: #323232;
	padding: 18px 0;
	margin: 40px 0 10px;
}
.pagecont .tel span {
	display: block;
	font-size: 16px;
	color: #fff;
	font-weight: bold;
	margin-bottom: 10px;
}
.pagecont .note {
	text-align: center;
	font-size: 15px;
	font-weight: bold;
}

.hdl{
	text-align: center;
	font-size: 39px;
	font-weight: bold;
	position: relative;
	line-height: 1.2;
	padding-bottom: 30px;
}
.hdl::before {
	background: #000;
	width: 60px;
	height: 6px;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	content: "";
	z-index: 2;
	position: absolute;
}
.hdl01{
	text-align: center;
	font-size: 39px;
	font-weight: bold;
	position: relative;
	line-height: 1.2;
	padding-bottom: 30px;
}
.hdl01::before {
	background: #0d85d2;
	width: 60px;
	height: 6px;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	content: "";
	z-index: 2;
	position: absolute;
}
.hdl02::before {
	background: #d5444e;
}
@media screen and (max-width: 768px) {
	.hdl {
		font-size: 24px;
		padding-bottom: 20px;
	}
	.hdl::before {
		width: 30px;
		height: 3px;
	}
	.hdl01 {
		font-size: 24px;
		padding-bottom: 20px;
	}
	.hdl01::before {
		width: 30px;
		height: 3px;
	}
}


.contact-bb{
	background: url("../images/common/bg-contact.jpg") no-repeat top center;
	background-size: cover;
	padding: 58px 0;
	text-align: center;
}
.contact-bb-tit{
	font-size: 30px;
	color: #fff;
}
.contact-bb-txt{
	margin-top: 30px;
	font-size: 18px;
	color: #fff;
}
.contact-flex{
	margin-top: 44px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.contact-flex a:nth-child(1){
	display: block;
	width: 380px;
	text-decoration: none;
	padding-right: 40px;
	text-align: right;
	font-size: 15px;
	box-sizing: border-box;
	font-weight: bold;
	padding-top: 7px;
	background: url("../images/common/ico_contact01.png") no-repeat left 27px center #fff;
	height: 84px;
}
.contact-flex a {
    color: black;
}
.contact-flex a:nth-child(1) span{
	font-size: 33px;
	display: block;
	line-height: 44px;
}
.contact-flex a:nth-child(2){
	display: block;
	width: 380px;
	margin-left: 1px;
	text-decoration: none;
	padding-right: 40px;
	text-align: right;
	font-size: 15px;
	box-sizing: border-box;
	font-weight: bold;
	padding-top: 7px;
	background: url("../images/common/ico_contact01.png") no-repeat left 27px center #fff;
	height: 84px;
}
.contact-flex a:nth-child(2) span{
	font-size: 33px;
	display: block;
	line-height: 44px;
}

.contact-flex a:nth-child(3){
	display: block;
	width: 360px;
	margin-left: 1px;
	line-height: 82px;
	text-decoration: none;
	text-align: center;
	font-size: 22px;
	font-weight: bold;
	box-sizing: border-box;
	background: url("../images/common/ico_contact02.png") no-repeat left 27px center #fff;
	height: 84px;
}
.visible_ts{
	display: none;
}
@media screen and (max-width: 768px) {
	.visible_ts{
		display: block;
	}
	.contact-bb{
		padding: 30px 10px;
		box-sizing: border-box;
	}
	.contact-bb-tit{
		font-size: 22px;
		line-height: 1.3;
		color: #fff;
	}
	.contact-bb-txt{
		margin-top: 15px;
		font-size: 16px;
		color: #fff;
	}
	.contact-flex{
		margin-top: 22px;
	}
	.contact-flex a:nth-child(1){
	display: block;
    width: 99%;
    height: 60px;
    text-decoration: none;
    padding-right: 0;
    padding-bottom: 3px;
    text-align: center;
    font-size: 12px;
    box-sizing: border-box;
    font-weight: bold;
    padding-top: 10px;
    line-height: 0.8;
    background: url(/images/common/ico_contact01.png) no-repeat left 27px center #fff;
	padding-left: 30px;
	}
	.contact-flex a:nth-child(1) span{
		font-size: 28px;
	}
	.contact-flex a:nth-child(2){
	margin-top: 10px;
	display: block;
    width: 99%;
    height: 60px;
    text-decoration: none;
    padding-right: 0;
    padding-bottom: 3px;
    text-align: center;
    font-size: 12px;
    box-sizing: border-box;
    font-weight: bold;
    padding-top: 10px;
    line-height: 0.8;
    background: url(/images/common/ico_contact01.png) no-repeat left 27px center #fff;
	padding-left: 30px;
	}
	.contact-flex a:nth-child(2) span{
		font-size: 28px;
	}
	.contact-flex a:nth-child(3){
		margin-top: 10px;
		display: block;
		width: 100%;
		margin-left: 0;
		height: 60px;
		line-height: 60px;
		text-decoration: none;
		text-align: center;
		font-size: 18px;
		font-weight: bold;
		box-sizing: border-box;
		background: url("../images/common/ico_contact02.png") no-repeat left 27px center #fff;
	}
}


.title-box{
	margin-bottom: 50px;
}
.hdm{
	font-size: 45px;
	text-align: center;
}
.hdm-en{
	font-size: 25px;
	text-align: center;
	color: #d5444e;
	/*margin-top: 20px;*/
	letter-spacing: 2px;
}
.hdm-en span{
	display: inline-block;
	padding: 0 96px;
	box-sizing: border-box;
	position: relative;
}
.hdm-en span:before{
	background: url(/images/esute-seikotuin/ico01.png) 0 0 no-repeat;
	width: 67px;
	height: 6px;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	content: "";
	z-index: 2;
	position: absolute;
	background-color: #d5444e;
}
.hdm-en span:after{
	background: url(/images/esute-seikotuin/ico01.png) 0 0 no-repeat;
	width: 67px;
	height: 6px;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	content: "";
	z-index: 2;
	position: absolute;
	background-color: #d5444e;
}

.comtxt{
	font-size: 20px;
	text-align: center;
	margin-top: 28px;
}
@media screen and (max-width: 768px) {
	.title-box{
		margin-bottom: 25px;
	}
	.hdm{
		font-size: 32px;
		text-align: center;
	}
	.hdm-en{
		font-size: 16px;
		/*margin-top: 10px;*/
		letter-spacing: 1px;
	}
	.hdm-en span{
		display: inline-block;
		padding: 0 50px;
		box-sizing: border-box;
		position: relative;
	}
	.hdm-en span:before{
		background: url(/images/esute-seikotuin/ico01.png) 0 0 no-repeat;
		width: 35px;
		height: 3px;
		top: 50%;
		left: 0;
		transform: translateY(-50%);
		content: "";
		z-index: 2;
		position: absolute;
		background-color: #d5444e;
	}
	.hdm-en span:after{
		background: url(/images/esute-seikotuin/ico01.png) 0 0 no-repeat;
		width: 35px;
		height: 3px;
		top: 50%;
		right: 0;
		transform: translateY(-50%);
		content: "";
		z-index: 2;
		position: absolute;
		background-color: #d5444e;
	}
	.comtxt{
		font-size: 18px;
		text-align: center;
		margin-top: 15px;
	}
}

/*TOPボタン*/

#page_top {
	width: 60px;
    height: 60px;
    position: fixed;
    right: 15px;
    bottom: 15px;
    background: black;
    opacity: 0.7;
}
#page_top :hover{
    opacity: 0.4;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  	font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f106';
    font-size: 40px;
    color: #fff;
    position: absolute;
    width: 60px;
    height: 60px;
    top: -3%;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
}


/*アニメーション */
/*
#wrap {
  position: relative;
  overflow: hidden;
}
.slideConts {
  -webkit-transition: .7s;
  -o-transition: .7s;
  transition: .7s;
}
.slideContsL {
  transform: translate(-800px, 0);
}
.slideContsR {
  transform: translate(800px, 0);
}
.slideContsL.show {
  transform: translate(-300px, 0) !important;
}
.slideContsR.show {
  transform: translate(100px, 0) !important;
}


.fadein {
  opacity : 0;
  transform : translate(0, 100px);
  transition : all 1s;
}
 
.fadein.active{
  opacity : 1;
  transform : translate(0, 0);
}
*/


@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 500
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold
}

@media screen and (min-width: 769px) {
  * {
    margin: 0;
    padding: 0;
    zoom: 1
  }
  *, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box
  }
  html {
    -webkit-text-size-adjust: none
  }
  body {
    color: #000;
    background: #EEE;
    font-size: 14px;
    line-height: 1.8;
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", Helvetica, Arial, Verdana, sans-serif;
    font-weight: 500;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    letter-spacing: 0.024em;
	  background-color: #fff;
  }
  h1, h2, h3, h4, h5, h6 {
    font-weight: 500
  }
  img {
    -ms-interpolation-mode: bicubic;
    vertical-align: bottom
  }
  i, strong {
    font-style: normal
  }
  a {
    text-decoration: none;
    outline: none;
    cursor: pointer;
	cursor: hand;
  }
	.hdlogo a{
		color: black;
	}
	/*
  a:hover {
    color: #f11
  }*/
	a:hover {
    opacity: .8
  }
	
	.tel a{
		display: block;
		transition: all 0.8s;
	}
	.tel a:hover{
		text-decoration: none;
		opacity: .8
	}
	.tel a span:hover{
		text-decoration: none;
	}
	.pagebox .bnr:hover{
		transition: all 0.8s;
	}
	.pagebox .bnr:hover{
		opacity: .8
	}
	
  .clear {
    clear: both
  }
  .clearfix:after {
    content: "";
    display: block;
    clear: both
  }
  .display {
    width: 1120px;
    margin: 0 auto;
    position: relative;
    top: 0;
    left: 0
  }
  input[type="text"], input[type="tel"], input[type="email"], input[type="submit"], textarea {
    -webkit-appearance: none
  }
}

@media screen and (max-width: 768px) {
  * {
    margin: 0;
    padding: 0;
    zoom: 1
  }
  *, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box
  }
  html {
    -webkit-text-size-adjust: none
  }
  body {
    color: #000;
    background: #ffffff;
    font-size: 12px;
    line-height: 1.8;
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", Helvetica, Arial, Verdana, sans-serif;
    font-weight: 500;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    letter-spacing: 0.024em
  }
  h1, h2, h3, h4, h5, h6 {
    font-weight: 500
  }
  img {
    -ms-interpolation-mode: bicubic;
    vertical-align: bottom
  }
  i, strong {
    font-style: normal
  }
  a {
    text-decoration: none;
    outline: none;
    cursor: pointer;
        color: black;
  }
  a:hover {
    color: #f11
  }
  a:hover img {
    opacity: .8
  }
  .clear {
    clear: both
  }
  .clearfix:after {
    content: "";
    display: block;
    clear: both
  }
  .display {
    width: auto;
    margin: 0 auto;
    position: relative;
    top: 0;
    left: 0
  }
  input[type="text"], input[type="tel"], input[type="email"], input[type="submit"], textarea {
    -webkit-appearance: none
  }
}

header {
  width: 100%;
  height: 100px;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #fff;
  z-index: 10000
}

header .header_contents {
  width: 100%;
  min-width: 1677px;
  height: 100px;
  margin: 0 auto;
  background-color: #fff;
  overflow: hidden
}

header .header_contents:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden
}

header .header_contents .header_contents01 {
  width: 592px;
  float: left;
  font-size: 0;
  line-height: 0;
  padding: 0;
  position: relative;
  top: 0;
  left: 0
}

header .header_contents .header_contents01 h1 {
  font-size: 14px;
  line-height: 1.0;
  position: absolute;
  top: 20px;
  left: 100px;
  font-weight: bold;
  padding: 0;
  margin: 0
}

header .header_contents .header_contents01 img {
  max-width: 100%
}

header .header_contents .header_contents02 {
  width: 1000px;
  float: right;
  font-size: 0;
  line-height: 0
}

header .header_contents .header_contents02:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden
}

header .header_contents .header_contents02 ul {
  padding: 0;
  margin: 0;
  display: table;
  float: right
}

header .header_contents .header_contents02 ul:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden
}

header .header_contents .header_contents02 ul li {
  list-style: none;
  font-size: 16px;
  line-height: 1;
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  padding: 0 30px
}

header .header_contents .header_contents02 ul li:last-child {
  font-size: 0;
  line-height: 0;
  padding: 0
}

header .header_contents .header_contents02 ul li a {
  font-size: 16px;
  color: #000;
  text-decoration: none;
  font-weight: bold
}

@media only screen and (max-width: 949px) {
  #header {
    height: 60px
  }
  header .header_contents {
    height: auto;
    width: 100%;
    min-width: 300px;
    margin: 0 auto;
    overflow: hidden
  }
  header .header_contents .header_contents01 {
    width: 80%;
    float: none;
    font-size: 0;
    line-height: 0;
    padding: 0;
    text-align: left
  }
  header .header_contents .header_contents01 img {
    height: 50px
  }
  header .header_contents .header_contents01 h1 {
    position: relative;
    top: 20px;
    left: 15px;
    font-size: 11px;
    text-align: left
  }
  header .header_contents .header_contents02 {
    display: none
  }
}

.l-header {
  width: 100%;
  height: 80px;
  position: relative;
  top: 0;
  left: 0;
  padding: 0 12px;
  background: #fff;
  z-index: 1;
  transition: all .8s ease
}

@media screen and (max-width: 949px) {
  .l-header {
    height: 60px
  }
}

.l-header__logo {
  float: left;
  margin-top: 15px
}

.l-header__logo__img {
  width: 200px;
  height: auto
}

@media screen and (max-width: 949px) {
  .l-header__logo__img {
    width: auto;
    height: 20px
  }
}

.l-header__navi {
  float: right
}

@media screen and (max-width: 949px) {
  .l-header__navi {
    -moz-background-size: 32px 64px;
    -webkit-background-size: 32px 64px;
    -o-background-size: 32px 64px;
    -ms-background-size: 32px 64px;
    background-size: 32px 64px;
    background: url("../images/common/test/responsive_nav_2x.png") no-repeat 0 0;
    background-size: cover;
    width: 32px;
    height: 32px;
    cursor: pointer;
    margin: 3vw 3vw 0 0
  }
  .l-header__navi.addClose {
    -moz-background-size: 32px 64px;
    -webkit-background-size: 32px 64px;
    -o-background-size: 32px 64px;
    -ms-background-size: 32px 64px;
    background-size: 32px 64px;
    background: url("../images/common/test/responsive_nav_2x.png") no-repeat 0 -32px;
    background-size: cover
  }
}

.l-header__navi__item {
  list-style: none;
  margin-top: 0;
  float: left
}

@media screen and (max-width: 949px) {
  .l-header__navi__item {
    margin: 0;
    border-top: #eee 1px solid;
    float: none
  }
}

.l-header__navi__link {
  display: inline-block;
  color: #fff;
  padding: 27px 20px;
  transition: all .8s ease
}

.l-header__navi__link:hover {
  background-color: #eee;
  color: #fff;
  text-decoration: none
}

@media screen and (max-width: 949px) {
  .l-header__navi__link {
    background: #03adce;
    display: block;
    padding: 12px 12px
  }
  .l-header__navi__link:hover {
    opacity: .9
  }
}

@media screen and (max-width: 949px) {
  .l-header__navi__unordered {

    position: absolute;
    width: 100%;
    margin-top: 50px;
    left: 0;
    display: none;
    z-index: 999
  }
}

footer {
  width: 100%
}

footer {
  background: url("../images/common/test/footer_background01.png") repeat top left !important
}

footer .footer_contents {
  width: 100%;
  margin: 0 auto;
  padding: 45px 0 22px
}

footer .footer_contents .footer_logo {
  font-size: 0;
  line-height: 0;
  text-align: center;
  padding: 40px 0
}

footer .footer_contents .footer_link {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto
}

footer .footer_contents .footer_link:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden
}

footer .footer_contents .footer_link ul {
    width: 20%;
    float: left;
    padding: 0;
    margin: 0;
}


footer .footer_contents .footer_link ul li {
  float: left;
  width: 100%;
  list-style: none
}

footer .footer_contents .footer_link ul li .logo {
  width: 100%;
  font-size: 0;
  line-height: 0;
  padding: 0 0 20px;
  text-align: center;
	height: 44px;
}
footer .footer_contents .footer_link ul:last-of-type li .logo img{
  width: auto;
}

footer .footer_contents .footer_link ul li .items {
  margin: 0 auto
}

footer .footer_contents .footer_link ul li .items:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden
}

footer .footer_contents .footer_link ul li .items .item {
  margin: 0;
  padding: 0 0 0 11px;
  width: 50%;
  float: left
}

footer .footer_contents .footer_link ul li .items .item a {
  font-size: 11px;
  line-height: 1.0;
  color: #fff;
  background: url("../images/common/test/icon_footer01.png") no-repeat center left;
  padding-left: 20px
}

footer .footer_contents .footer_link ul li .items01 {
  width: 100%;
  padding-left: 10px
}

footer .footer_contents .footer_link ul li .items01 .item {
  width: 50%
}

footer .footer_contents .footer_link ul:nth-child(1) li {
  padding: 0;
}

footer .footer_contents .footer_link ul:nth-child(1) li .items {
  width: 80%
}

footer .footer_contents .footer_link ul{
  /*border-left: 1px solid #000;*/
  border-right: 1px solid #000;
	height: 127px;
}
footer .footer_contents .footer_link ul:first-of-type {
  border-left: none;
}
footer .footer_contents .footer_link ul:last-of-type {
  border-right:none;
}

footer .footer_contents .footer_link ul:nth-child(2) li {
  padding: 0;
}

footer .footer_contents .footer_link ul:nth-child(2) li .items {
  width: 100%
}

footer .footer_contents .footer_link ul:nth-child(3) li {
  padding: 0;
}



footer .footer_contents .footer_copylight {
  font-size: 13px;
  line-height: 1;
  text-align: center;
  padding: 80px 0 0;
  color: #9b9b9b
}
footer .footer_contents .footer_link ul:nth-of-type(3),footer .footer_contents .footer_link ul:nth-of-type(4){
	width: 16%;
}
footer .footer_contents .footer_link ul:nth-of-type(5),footer .footer_contents .footer_link ul:nth-of-type(6){
	width: 14%;
}

@media only screen and (max-width: 949px) {
  footer .footer_contents .footer_logo {
    width: 95%;
    margin: 0 auto;
    font-size: 0;
    line-height: 0;
    text-align: center;
    padding: 0 0 20px
  }
  footer .footer_contents .footer_copylight {
    font-size: 13px;
    line-height: 1;
    text-align: center;
    padding: 40px 0 0;
    color: #9b9b9b
  }
  footer .footer_contents .footer_link ul {
    width: 100%;
    float: left;
    padding: 0;
    margin: 0 0 20px
  }
  footer .footer_contents .footer_link ul li {
    float: left;
    width: 100%;
    list-style: none
  }
  footer .footer_contents .footer_link ul li .logo {
    width: 100%;
    font-size: 0;
    line-height: 0;
    padding: 0 0 20px;
    text-align: center
  }
  footer .footer_contents .footer_link ul li .items {
    margin: 0 auto
  }
  footer .footer_contents .footer_link ul li .items:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden
  }
  footer .footer_contents .footer_link ul li .items .item {
    margin: 0;
    padding: 0 0 0 15px;
    width: 33.33%;
    float: left;
	text-align: center;
  }
  footer .footer_contents .footer_link ul li .items .item a {
    font-size: 11px;
    line-height: 1.0;
    color: #fff;
    background: url("../images/common/test/icon_footer01.png") no-repeat center left;
    padding-left: 20px
  }
  footer .footer_contents .footer_link ul li .items01 {
    width: 100%;
    padding-left: 10px
  }
  footer .footer_contents .footer_link ul li .items01 .item {
    width: 50%;
    text-align: center;
  }
  footer .footer_contents .footer_link ul:nth-child(1) li {
    padding: 0
  }
  footer .footer_contents .footer_link ul:nth-child(1) li .items {
    width: 80%; 
  }
  footer .footer_contents .footer_link ul:nth-child(2) {
    border-left: none;
    border-right: none
  }
  footer .footer_contents .footer_link ul:nth-child(2) li {
    padding: 0 0
  }
  footer .footer_contents .footer_link ul:nth-child(2) li .items {
    width: 80%;
  }
  footer .footer_contents .footer_link ul:nth-child(3) li {
    padding: 0
  }
  footer .footer_contents .footer_link ul:nth-child(3) li .items {
    width: 60%
  }
	footer .footer_contents .footer_link ul:nth-child(4) li .items {
    width: 60%
  }
  footer .footer_contents .footer_copylight {
    padding: 40px 0 0
  }
	.footer_contents .footer_link ul:last-of-type {
    height: auto;
}
}

.pc {
  display: block
}

.sp {
  display: none
}

span.pc {
  display: inline-block
}

span.sp {
  display: none
}

main {
  width: 100%;
  background-color: #fff;
  padding-top: 100px;
  display: block
}

main .kasou_main_visual_contents {
  width: 100%;
  height: 180px
}

main .kasou_main_visual_contents h2 {
  width: 100%;
  height: 180px;
  text-align: center;
  color: #fff;
  margin: 0;
  font-weight: bold
}

h1, h2, h3, h4, h5 {
  padding: 0
}

@media only screen and (min-width: 768px) {
  main .kasou_main_visual_contents h2 {
    padding: 80px 0 0;
    margin: 0;
    font-weight: bold;
    font-size: 34px;
    line-height: 1
  }
  main .footer_contents {
    width: 100%;
    margin: 0 auto;
    background: url("../images/common/test/footer_background.png") repeat top left;
    padding: 45px 0
  }
  main .footer_contents .link01 {
    width: 820px;
    margin: 0 auto
  }
  main .footer_contents .link01 ul {
    margin: 0;
    padding: 0
  }
  main .footer_contents .link01 ul:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden
  }
  main .footer_contents .link01 ul li {
    float: left;
    list-style: none;
    background: url("../images/common/test/icon_footer01.png") no-repeat center left;
    margin: 0;
    padding: 0 60px 0 15px
  }
  main .footer_contents .link01 ul li:last-child {
    padding-right: 0
  }
  main .footer_contents .link01 ul li a {
    font-size: 11px;
    line-height: 1.0;
    color: #fff
  }
  main .footer_contents .link02 {
    width: 740px;
    margin: 30px auto 0
  }
  main .footer_contents .link02:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden
  }
  main .footer_contents .link02 ul {
    margin: 0;
    padding: 0;
    float: right
  }
  main .footer_contents .link02 ul:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden
  }
  main .footer_contents .link02 ul li {
    float: left;
    list-style: none;
    margin: 0;
    background: url("../images/common/test/icon_footer02.png") no-repeat center left;
    margin: 0;
    padding: 0 30px 0 10px
  }
  main .footer_contents .link02 ul li:last-child {
    padding-right: 0
  }
  main .footer_contents .link02 ul li a {
    font-size: 11px;
    line-height: 1.0;
    color: #fff
  }
}


.footer_top{
	background: url(../images/common/test/footer_background.png) repeat top left;
	padding: 24px 0px;
}
.footer_top div{
	max-width: 1120px;
    margin: auto;

}

@media screen and (max-width: 949px) {
  .pc {
    display: none
  }
  .sp {
    display: block
  }
  span.pc {
    display: none
  }
  span.sp {
    display: inline-block
  }
  main {
    padding-top: 60px
  }
  main .kasou_main_visual_contents {
    width: 100%;
    height: 40px
  }
  main .kasou_main_visual_contents h2 {
    height: 40px;
    padding: 10px 0 0;
    margin: 0;
    font-weight: bold;
    font-size: 18px;
    line-height: 1
  }
		footer .footer_contents .footer_link ul:nth-of-type(3),footer .footer_contents .footer_link ul:nth-of-type(4){
	width: 100%;
}
footer .footer_contents .footer_link ul:nth-of-type(5),footer .footer_contents .footer_link ul:nth-of-type(6){
	width: 100%;
    height: auto;
    margin-bottom: 60px;
}
footer .footer_contents .footer_link ul:nth-of-type(6){
		margin-bottom: 0px;
	}
}

@media screen and (max-width: 768px) {
  .pc {
    display: none
  }
  .sp {
    display: block
  }
  span.pc {
    display: none
  }
  span.sp {
    display: inline-block
  }
  main .footer_contents {
    width: 100%;
    margin: 0 auto;
    background: url("../images/common/test/footer_background.png") repeat top left;
    padding: 45px 0
  }
  main .footer_contents .link01 {
    width: 90%;
    margin: 0 auto
  }
  main .footer_contents .link01 ul {
    margin: 0;
    padding: 0
  }
  main .footer_contents .link01 ul:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden
  }
  main .footer_contents .link01 ul li {
    float: left;
    width: 33%;
    list-style: none;
    background: url("../images/common/test/icon_footer01.png") no-repeat center left;
    margin: 0;
    padding: 0 0 0 15px
  }
  main .footer_contents .link01 ul li a {
    font-size: 11px;
    line-height: 1.0;
    color: #fff
  }
  main .footer_contents .link02 {
    width: 90%;
    margin: 30px auto 0
  }
  main .footer_contents .link02:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden
  }
  main .footer_contents .link02 ul {
    margin: 0;
    padding: 0;
    float: right
  }
  main .footer_contents .link02 ul:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden
  }
  main .footer_contents .link02 ul li {
    float: left;
    list-style: none;
    margin: 0;
    background: url("../images/common/test/icon_footer02.png") no-repeat center left;
    margin: 0;
    padding: 0 30px 0 10px
  }
  main .footer_contents .link02 ul li:last-child {
    padding-right: 0
  }
  main .footer_contents .link02 ul li a {
    font-size: 11px;
    line-height: 1.0;
    color: #fff		
}

.c-btn {
  transition: all 120ms linear;
  display: inline-block;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  -webkit-appearance: none;
  opacity: 1;
  line-height: 1;
  vertical-align: middle;
  white-space: nowrap;
  -webkit-font-smoothing: antialiased;
  padding: 20px;
  font-size: 20px;
  font-weight: bold
}

.c-btn:hover {
  text-decoration: none;
  opacity: .8
}

.c-btn--sm {
  padding: 15px 20px;
  font-size: 12px
}

.c-btn--lg {
  padding: 20px;
  font-size: 24px
}

.c-heading--1 {
  font-size: 32px
}

@media screen and (max-width: 768px) {
  .c-heading--1 {
    font-size: 28px
  }
}

.c-heading--2 {
  font-size: 28px
}

@media screen and (max-width: 768px) {
  .c-heading--2 {
    font-size: 24px
  }
}

.c-heading--3 {
  font-size: 24px
}

@media screen and (max-width: 768px) {
  .c-heading--3 {
    font-size: 20px
  }
}

.c-heading--4 {
  font-size: 20px
}

@media screen and (max-width: 768px) {
  .c-heading--4 {
    font-size: 16px
  }
}

.u-bg__white {
  background-color: #fff
}

.u-text--center {
  text-align: center
}

.u-text--right {
  text-align: right
}

.u-text--left {
  text-align: left
}

.u-text--xxxl {
  font-size: 32px
}

@media screen and (max-width: 768px) {
  .u-text--xxxl {
    font-size: 28px
  }
}

.u-text--xxl {
  font-size: 28px
}

@media screen and (max-width: 768px) {
  .u-text--xxl {
    font-size: 24px
  }
}

.u-text--xl {
  font-size: 24px
}

@media screen and (max-width: 768px) {
  .u-text--xl {
    font-size: 20px
  }
}

.u-text--lg {
  font-size: 20px
}

.u-text--md {
  font-size: 16px
}

.u-text--sm {
  font-size: 12px
}

.u-text--xs {
  font-size: 10px
}

.u-text--normal {
  font-weight: normal
}

.u-text--bold {
  font-weight: bold
}
.footer_top{
	background: url(../images/common/test/footer_background.png) repeat top left;
	padding: 24px 0px;
}
.footer_top div{
	max-width: 1120px;
    margin: auto;

}
