@charset "utf-8";
/* LAST UPDATE */

/* common */
*{margin: 0; padding: 0;}
*, *: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; font-weight: 400;}
html{font-size: 62.5%;}
html,body{width: 100%; margin: 0; padding: 0; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;}
body{font-size: 3vw; /*font-size: 1.4rem;*/ line-height: 1.4; padding-top:50px;}
@media screen and (min-width: 768px), print {
	body{font-size: 1.6rem; width:100%; padding-top:70px;}
}
.pc{display: none;}
.sp{display: block;}
@media screen and (min-width: 768px), print {
	.pc{display: block;}
	.sp{display: none;}
}
.cf:after { content: ""; clear: both; display: block;}
#link01, #link02{ margin-top:-60px; padding-top:60px;}
@media screen and (min-width: 768px), print {
	#link01, #link02{ margin-top:-170px; padding-top:170px;}
}

a:hover{opacity: 0.6; -webkit-transition: 0.1s ease-in-out; -moz-transition: 0.1s ease-in-out; -o-transition: 0.1s ease-in-out; transition: 0.1s ease-in-out;}
.container{ width:100%; margin: 0 auto 80px; padding:0 10px;}
#top_header .container{ height:50px; display:flex; text-align: left; justify-content: space-between; align-items: center;}
#service .container,#contact .container,#privacy .container,#solicitation .container{margin-bottom:50px;}
@media screen and (min-width: 768px), print {
	.container{max-width:1000px; margin: 0 auto 140px; padding:0;}
	#service .container,	#contact .container, #privacy .container, #solicitation .container{width:700px;}
	#top_header .container{position:relative; display: flex;}
}



#bred{width: 96%; margin: 0 0 2em; padding: 0 2%;}
#bred:after { content: ""; clear: both; display: block;}
#bred li, #bred li a{font-weight: 700; color: #000;}
#bred li {margin: 0 1.0em 0 0; padding: 0 1.5em 0 0; float: left; position: relative; font-size: 2.5vw; }
#bred li a:after { content: ">"; position: absolute; right: 0; top: -.1em;}
@media screen and (min-width: 768px), print {
	#bred{ width: 700px; margin: 0 auto 60px; padding: 0; display: block; }
	#bred li{font-size: 1.4rem;}
}

h1{text-align: left;}
h1 a{ display: block; font-size:20px; font-weight:700; text-align: left; letter-spacing: .05em; }
@media screen and (min-width: 768px), print {
	h1 a{ font-size:26px; }	
}

main{padding-top:30px;}
/* 
#main h3{ margin: 0 0 1.5em; padding: .6em .7em .5em; font-size: 4.5vw; font-weight: 700; color: #fff; background: #186144;}
#main h4{ margin: 0 0 1.5em; font-size: 4.5vw; font-weight: 700; border-bottom: 2px solid #186144;}
#main h5{ margin: 0 0 1em; font-size: 4vw; font-weight: 700; color: #186144; }
@media screen and (min-width: 768px), print {
#main h3{ font-size: 2.3rem; }
#main h4{ font-size: 2.3rem; }
#main h5{ font-size: 2rem; }	
} */
#privacy h2,#solicitation h2{font-size: 5vw; font-weight: 700; text-align: center; letter-spacing: .14em; margin-bottom: .9em; line-height:1;}
#privacy h2 span,#solicitation h2 span{font-size: 2vw; color:#1b5a31;}
#privacy .h2_sub,#solicitation .h2_sub{font-size: 2.8vw; margin-bottom:20px; font-weight: 700; text-align: center; color:#1b5a31; letter-spacing: .12em; }
#privacy h3,#solicitation h3{font-size: 4vw; letter-spacing: .12em; color:#1b5a31; margin-bottom:1.6em;}
@media screen and (min-width: 768px), print {
	#privacy h2,#solicitation h2{font-size: 29px; margin-bottom: 1.2em;}
	#privacy h2 span,#solicitation h2 span{font-size: 16px; }
	#privacy .h2_sub,#solicitation .h2_sub{font-size: 14px; margin-bottom:55px;}
	#privacy h3,#solicitation h3{font-size: 29px;}
	}

.mb0{margin-bottom: 0 !important;}
.mb03{margin-bottom: .3em !important;}
.mb1{margin-bottom: 1em !important;}
.mb2{margin-bottom: 2em !important;}
.mb3{margin-bottom: 3em !important;}
.mb4{margin-bottom: 4em !important;}
.mb10{margin-bottom: 10px !important;}
.mb20{margin-bottom: 20px !important;}
.mb30{margin-bottom: 30px !important;}
.mb40{margin-bottom: 40px !important;}
.mb50{margin-bottom: 50px !important;}
.mb60{margin-bottom: 60px !important;}
.mb70{margin-bottom: 70px !important;}
.mb80{margin-bottom: 80px !important;}
.fwB{font-weight: 700 !important;}
.fwN{font-weight:normal !important;}
.taR{text-align: right;}
.taC{text-align: center;}
.pt1{padding-top:1em;}
.bg_gray{background: #ededed;}
.red{color: red}
.green01{color: #186144 !important}
.indent0{text-indent:0em;}
.note01{text-indent: -1em; margin-left: 1em;}
.note02{text-indent: -2em; margin-left: 2em;}
.fsz15{font-size:1.5rem;}
.fsz12{font-size:1.2rem;}
.line-h12{line-height:1.2 !important;}

.anno{font-weight: bold; color:#186144; letter-spacing: .14em;}
.list01 li{ margin: 0 0 .7em;}
.list01 li a{ text-decoration: underline;}
.list02 li{ margin: 0 0 .7em;}
.list02 li a{ text-decoration: underline;}
.arrow01{	position: relative; display: inline-block; padding: 0 18px; vertical-align: middle; text-decoration: none;font-size: 18px;}
.arrow01::after{content: ""; position: absolute; width: 10px; height: 10px; top: 1px; bottom: 0; right: 30px; margin: auto; vertical-align: middle; border-top: 2px solid #fff; border-right: 2px solid #fff; -webkit-transform: rotate(45deg); transform: rotate(45deg);}
.arrow02{	position: relative; display: inline-block; vertical-align: middle; text-decoration: none;font-size: 18px;}
.arrow02::after { content: ""; position: absolute; width: 10px; height: 10px; top: 1px; bottom: 0; right:20px; margin: auto; vertical-align: middle; border-top: 2px solid #1b5a31; border-right: 2px solid #1b5a31; -webkit-transform: rotate(
45deg); transform: rotate(45deg);}
.earth:before{ width: 40px; height: 40px; margin: 0px 10px 0 0px; content: ""; display: inline-block; background: url("../images/icon_earth.png") no-repeat; vertical-align: bottom; position:relative; top:2px; background-size: cover;}
.flag:before{ width: 38px; height: 54.5px; margin: 0px 8px 0 6px; content: ""; display: inline-block; background: url("../images/icon_flag.png") no-repeat; vertical-align: bottom; position:relative; top:18px; background-size: cover;}
.img img{ width: 100%; height: auto;}
@media screen and (min-width: 768px), print {
	.earth:before{ width: 55px; height: 55px; top:6px; margin: 0px 20px 0 0px;}
	.flag:before{ width: 46px; height: 66px; top:18px; margin:0px 20px 0 6px;}
}
.img img{ width: 100%; height: auto; }
@media screen and (min-width: 768px), print {
	.img img{ width: auto; }
}

table.horizontal tr th:not(:last-of-type) {border-right: 1px solid #fff; }
table.vertical tr:not(:last-child) th {border-bottom: 1px solid #fff;}
.table01 th{ padding: .5em .5em; border-top: 1px solid #16883e; border-bottom: 1px solid #16883e; color:#16883e; font-weight: bold; white-space: nowrap; text-align: center;}
.table01 td{ padding: .5em 2em .5em 1em; font-weight: bold; border-top: 1px solid #16883e; word-break:break-all; border-bottom: 1px solid #16883e;}
.table01 td p{font-weight: bold;}
.table01 td p.fwN{font-weight: normal; }
@media screen and (min-width: 768px), print {
	.table01 th{ padding: 1.3em 1.4em;}
	.table01 td{ padding: 1.3em 2em 1.3em 1em;}
	.table01 td p.fwN{ font-size: 14px;}
}

.table02 th{ padding: 1em 1.4em; border-top: 1px solid #000; border-bottom: 1px solid #000; color:#000; font-weight: bold; white-space: nowrap; text-align: center;}
.table02 td{ padding: 1em 1em 1em 1em; font-weight: bold; border-top: 1px solid #000; word-break:break-all; border-bottom: 1px solid #000;}
.table02 td p{font-weight: bold;}
.table02 td p.fwN{font-weight: normal; font-size: 14px;}

.table03 th, #contact .table03 td{ padding: .5em; border: 1px solid #186144}
.table03 th{ background:#1b5a31; color: #fff; white-space: nowrap; text-align: center;}

/*---------------------*/
/* top css */
/*---------------------*/
#top_wrapper{ width: 100%; overflow: hidden; margin-bottom:24px;}

/* header */
header{ width: 100%; height: 50px; display: block; position: fixed; top: 0; left: 0; z-index: 2000; }
#top_header{ background-color:#1b5a31; color:#fff; }
#top_header #g-nav ul{display:flex;  flex-direction: column;}
@media screen and (min-width: 768px), print {
	#top_header{height:70px; padding:10px 10px 0;}
	#top_header #g-nav ul{display:flex; justify-content: right; flex-direction: row;}
}


/* header nav */
#g-nav{ position:fixed; z-index: 999; top:-50%; left:0; width:100%; height: 30vh; background:#1b5a31; transition: transform .6s, top .6s;}
#g-nav.panelactive{top: 0;}/*アクティブクラスがついたら位置を0に*/
#g-nav ul { position: absolute; z-index: 999; top:50%; left:50%; transform: translate(-50%,-50%); }
#g-nav li{list-style: none; text-align: center; }
#g-nav li a{ color: #fff; text-decoration: none; padding:10px; display: block; font-weight: bold; width:100%; white-space:nowrap; font-size: 16px; float: left}
@media screen and (min-width: 768px){ 
	#g-nav { width: 560px; position: static; height: auto; background: transparent; ;}
	#g-nav ul {position: static; transform: translate(0, 0); flex-direction: row;}
	#g-nav li{list-style: none; text-align: left; }
	#g-nav li a{color: #fff; padding: 0 0 0 2em;}
}


.top_img{background-image: url(../images/top_main_sp.png); background-repeat: no-repeat; background-position: top; background-color:#ccc;}
.top_img{background-size: cover; height: 30vh; width: 100vw;}
	@media screen and (min-width: 768px){ 
		.top_img{background-size: cover; height:778px; width:100%;}
		.top_img{background-image: url(../images/top_main.png); background-position: center;}
}


/* hamburger btn */
.openbtn1{ position:fixed; z-index: 9999; top:0; right: 0; cursor: pointer; width: 50px; height:50px; }
.openbtn1 span{ display: inline-block; transition: all .4s; position: absolute; left: 14px; height: 3px; border-radius: 2px; background-color: #fff; width: 45%;}
.openbtn1 span:nth-of-type(1) {top:15px;}
.openbtn1 span:nth-of-type(2) {top:23px;}
.openbtn1 span:nth-of-type(3) {top:31px;}
.openbtn1.active span:nth-of-type(1) {top: 18px; left: 13px; transform: translateY(6px) rotate(-45deg); width: 50%; background-color: #fff;}
.openbtn1.active span:nth-of-type(2) {opacity: 0; background-color: #fff;}
.openbtn1.active span:nth-of-type(3)	{top: 30px;left: 13px; transform: translateY(-6px) rotate(45deg); width: 50%; background-color: #fff;}
@media screen and (min-width: 768px){
	.openbtn1 {display: none;}
}

/*---------------------*/
/* top page */
/*---------------------*/
#top{ margin-bottom: 0px; padding-top:80px;}
#top h2{font-size: 5vw; font-weight: 700; text-align: center; letter-spacing: .14em;  margin-bottom:3px;}
#top h3{font-size: 4.5vw; font-weight: 700; text-align: center; margin-bottom:20px;}
#top .h2_sub{font-size: 2.8vw; margin-bottom:20px; font-weight: 700; text-align: center; color:#329150; letter-spacing: .14em;  text-indent:3em;}
@media screen and (min-width: 768px), print {
	#top{ margin-bottom: 30px;}
	#top h2{font-size: 29px; margin-bottom:5px;}
	#top h3{font-size: 21px; margin-bottom:20px;}
	#top .h2_sub{font-size: 14px; margin-bottom:55px; text-indent:5em;}
}


/* company */
.company .company-contents {margin-bottom: 40px;}
.company .business .banner{margin-bottom:20px;text-align: center;}
.company .business .banner a{margin: 0 auto; }
.company .business .banner a img{width:100%;}
@media screen and (min-width: 768px), print {
	.company table{ width:600px;}
	.company .company-contents, .company .business{width:600px; margin:0 auto;}
	.company .company-contents{margin-bottom:64px;}
	.company .business{text-align: center;}
	.company .business .banner{margin-bottom:20px;}
	.company .business .banner a{margin: 0 auto;}
	.company .business .banner a img{width:455px;}
}


/* access */
.access .map{margin-bottom:20px;}
.access .google_map iframe{ width: 100%; height:30vh;}
.access .address .com_name{font-size: 1.4em; padding-bottom: .5em; letter-spacing: .07em;}
.access .address p{ font-size: 1em; text-align: center; font-weight:700; line-height: 1.4em; padding-bottom:.4em; }
@media screen and (min-width: 768px), print {
	.access .map{margin-bottom:40px;}
	.access .address .com_name{font-size: 27px; padding-bottom: 20px;}
	.access .address p{ font-size: 17px; line-height: 27px; padding-bottom:10px; }
	.access .google_map iframe{ width: 100%; height:470px;}
}


.history .history-wrapper{width:100%; margin:0 auto;}
.history .container{margin-bottom:40px;}
.history table{margin:0 auto; width:100%;}
.history .table02 th{width:30%; text-align-last: left; padding:.5em 1em .5em 1em;}
.history .table02 td{padding:.5em 1em .5em 0;}


.suppliers:after { content: ""; clear: both; display: block;}
.suppliers_ul:after { content: ""; clear: both; display: block;}
.suppliers_ul li {font-size: .95em; font-weight: bold; text-align: center; line-height: 1.8em; float: left;}
@media screen and (min-width: 768px), print {
	.history .history-wrapper{width:800px;}
	.history .container{margin-bottom:120px;}
	.history table{ width:800px;}
	.history .table02 th{width:170px; padding:1.2em 2em 1.2em 3em; font-size: 15px;}
	.history .table02 td{padding:1.2em 3em 1.2em 0; font-size: 15px;}
	.suppliers_ul { width: 580px; margin: 0 auto;}
	.suppliers_ul li {font-size: 17px; line-height: 45px;}
}

/*---------------------*/
/* contact */
/*---------------------*/
#contact h2{font-size: 5vw; font-weight: 700; text-align: center; letter-spacing: .14em;  margin-bottom:3px;}
#contact .h2_sub{font-size: 2.8vw; margin-bottom:20px; font-weight: 700; text-align: center; color:#329150; letter-spacing: .14em; }
#contact input{border:1px solid #c0c0c0; width:100%; height:33px;}
@media screen and (min-width: 768px), print {
	#contact h2{font-size: 29px; margin-bottom:5px;}
	#contact .h2_sub{font-size: 14px; margin-bottom:55px;}
}

.errs{margin: 0 0 1.5em; padding: 1em 1em 0.6em ; background:#F9F1A6; }
.errs ul li { margin: 0 0 .3em;  }

/* contact form */
.contact_dl { margin:0 auto; background-color: #FFF; border: 1px solid #13531d; width: 100%; display: flex; flex-wrap: wrap; align-items: stretch;margin-bottom:20px;}
.contact_dl .center_2l { padding-top: 1.6em;}
dl, dt, dd {margin: 0; padding: 0;}
.wrapper{max-width:1000px;}
.contact_dl dt, .contact_dl dd { padding: 1em; box-sizing: border-box; align-content: center;}
.contact_dl dt {padding:.5em  1em;  width:100%; border-bottom: 1px solid #E4E4E4; background-color: #13531d; font-weight: bold; color:#fff;}
.contact_dl dd {padding: 1em; width:100%; border-bottom: 1px solid #13531d; vertical-align: middle;}
.contact_dl dt:last-of-type, .contact_dl dd:last-of-type { border-bottom: none;}
input { width: calc(100% - 1em); height: 1em; border: 1px solid #ccc; border-radius: 2px; font-size: 20px; padding:10px;}
#contact .contact_dl dd input.tel{width:45%;}
textarea { width: calc(100% - .25em); height: 100%; border: 1px solid #ccc; border-radius: 2px; resize: none; font-size: 20px;}
#contact_submit{text-align: center;}
#contact input[type="button"],#contact input[type="submit"] { width:100%; height: 45px; padding: 0; line-height: 45px; font-size:3.5vw; border:none; text-align: center; font-weight: 700; border-radius: 10px; display:block;}
.contact_btn:after { content: ""; clear: both; display: block;}
.contact_btn li{width: 100%; margin: 0; float: left;}
#contact input[type="button"] { margin:0 auto 1em; background:#ddd; color:#000; }
#contact input[type="submit"] { margin:0 auto; background:#13531d; color:#fff;}
.contact_btn {text-align: center;}
@media screen and (min-width: 768px){ 
	.contact_dl { width: 700px; margin-bottom:30px;}
	.contact_dl dt, .contact_dl dd { padding: 1.5em;}
	.contact_dl dt {width:32%; padding-top:3rem;}
	.contact_dl dd { width:68%;}
	#contact input, #contact textarea{font-size:1.4rem; }
	#contact input[type="button"],#contact input[type="submit"] { width:200px; height:64px;font-size:1.6rem;}
	input[type="submit"]{margin:10px auto 80px;}
	input[type="submit"]:hover{opacity: 0.6; -webkit-transition: 0.1s ease-in-out; -moz-transition: 0.1s ease-in-out; -o-transition: 0.1s ease-in-out; transition: 0.1s ease-in-out;}
	.contact_btn{width: 440px; margin: 0 auto;}
	.contact_btn li{width: 200px; margin: 0 10px;}
}

.btn01 a{padding: .5em 1em .6em; background: #fff; display: inline-block; border-radius: 5px; border: 1px solid #186144;}


main{ width: 100%; padding: 4% 2%; }
@media screen and (min-width: 768px), print {
	main{ width: 1000px; margin: 0 auto; padding: 30px 0}
}
main h2{ margin: 0 0 1em; text-align: center; font-weight: 700; color: #000; }
main h2 span{ text-align: center; font-weight: 700; color: #000 }
@media screen and (min-width: 768px), print {
}
main h3{ margin: 0 0 2em; text-align: center; font-weight: 700; color: #000; }
@media screen and (min-width: 768px), print {
	main h3{ margin: 0 0 30px; font-size: 3rem;}
}
main h4{ margin: 0 0 2em; padding: .5em 1em; color: #fff; background: #1b5a31; font-size: 3.5vw; line-height: 1.2; height:auto; }
@media screen and (min-width: 768px), print {
	main h4{ margin: 0 0 30px; font-size: 2rem; padding: .9em 1em;}
}


.service_h2 { margin: 0 0 20px;}
.service_h2 img { width: 100%; height: auto;}
/* service */
#service .service_dl { width: 100%; margin: 0 0 2em; background: #1b5a31; border: 1px solid #1b5a31; display: flex; flex-direction: column;	margin-bottom: 40px;}
#st,#insurance{ margin-top:-86px; padding-top:86px;}
#contact_page{ margin-top:-100px; padding-top:100px;}
#company_id{margin-top:-100px; padding-top:100px;}
#service .service_dl dt, .service_dl dd { padding: 1.5em; font-size: 18px; line-height: 1.75;}
#service .service_dl dt { color: #fff; width:100%; text-align: center; padding:0.4em 1em;}
#service .service_dl dd {width:100% ; background: #fff; display: flex; padding:.5em; gap:1em;}
#service .service_dl dd > div{margin: 0 3% 0 0;}
#service .service_dl dd > div >.list03{ font-size: 14px; line-height: 1.4;}
#service .service_dl dd > div p{font-weight: bold; font-size: 15px; line-height: 1.2;}
@media screen and (min-width: 768px), print {
	#service .service_dl { flex-direction: row;	margin-bottom: 70px;}
	#service .service_dl dt, .service_dl dd { padding: 1.5em; font-size: 18px; line-height: 1.75;}
	#service .service_dl dt { color: #fff; width:130px; text-align: center;}
	#service .service_dl dd {width:calc(100% - 130px); background: #fff; padding:1em 1.5em; display: flex; gap:0;}
	#service .service_dl dd > div { width: 50%;}
	#service .service_dl dd > div >.list03{ font-size: 14px; margin-bottom:0;}
	#service .service_dl p{font-weight: bold;}
}


.service_h3{ margin: 0; padding: 0.5em 0; background: #1b5a31; border-radius: 10px 10px 0 0; color: #fff; font-size: 16px; text-align: center;}
.service_box{ padding: 1em; border: 2px solid #1b5a31;}
.service_box p{line-height:1.7;}
.service_h4{ margin: 0 0 16px; padding: 0 0 5px 45px; background: #fff; color: #1b5a31; font-weight: 700; font-size: 16px; border-bottom: 2px solid #1b5a31; position: relative;}
.service_h5{ font-size: 16px; margin: 0 0 10px; padding: 0; ; color: #1b5a31; font-weight: 700;}
@media screen and (min-width: 768px), print {
	.service_h3{ margin: 0; background: #1b5a31; border-radius: 10px 10px 0 0; color: #fff; font-size: 18px; padding:.9em 2em; text-align: left;}
	.service_h4{ height: 50px; margin: 0 0 16px; padding: 0 0 5px 75px; font-size: 21px;}
	.service_h5{ font-size: 18px;}
	.service_box{ padding:1em; border: 2px solid #1b5a31;}
}


.icon_service01:before, 
.icon_service02:before, 
.icon_service03:before, 
.icon_service04:before{ width: 40px; height: 30px; left:-45px; bottom: -24px; margin: 0; content: ""; display: block; position: absolute;}
.icon_service01:before{ background: url("../service/images/icon_servise01.png") no-repeat; vertical-align: bottom; position:relative; background-size: contain;}
.icon_service02:before{ background: url("../service/images/icon_servise02.png") no-repeat; vertical-align: bottom; position:relative; background-size: contain;}
.icon_service03:before{ background: url("../service/images/icon_servise03.png") no-repeat; vertical-align: bottom; position:relative; background-size: contain;}
.icon_service04:before{ background: url("../service/images/icon_servise04.png") no-repeat; vertical-align: bottom; position:relative; background-size: contain;}
@media screen and (min-width: 768px), print {
	.icon_service01, 
	.icon_service02, 
	.icon_service03, 
	.icon_service04{position: relative; line-height: 50px;}
	.icon_service01:before, 
	.icon_service02:before, 
	.icon_service03:before, 
	.icon_service04:before{ width: 60px; height: 50px; position: absolute; left: 0; bottom: 0; display: block;  }
}


#service_btn{width: 80%; margin: 0 auto; display: flex; gap:4%; flex-direction: column;}
#service_btn li { width: 100%; margin-bottom: 20px;}
#service_btn li a{ padding: 1.5em; border-radius:10px; font-size: 3.5vw; border: 2px solid #1b5a31; color:#1b5a31; display: block; text-align: center; line-height: 1; font-weight: bold;}

@media screen and (min-width: 768px), print {
	#service_btn{ flex-direction: row;}
	#service_btn li { width: 100%; }
	#service_btn li a{padding: 1em; font-size: 16px; }
}


#privacy input{border:1px solid #c0c0c0; width:100%; height:33px;}
#privacy p{text-indent: 1em; line-height:1.7em;}
#privacy .indent0{text-indent: 0em;}
#privacy p a{text-decoration: underline; color:#1b5a31;}
@media screen and (min-width: 768px), print {
}

/* solicitation */
#solicitation p{line-height:1.7;}
#solicitation ul li{text-indent:-1em;margin-left:1em;}
/*#solicitation ul li:last-of-type{margin-bottom:2em;}*/


/*---------------------*/
/* footer */
/*---------------------*/
footer { margin: 0; padding: 30px 0 40px; border-top:1px solid #1b5a31; color:#1b5a31;}
footer .btn_info{ width:60%; height:70px; margin:10px auto 1.5em; padding:25px 0; font-size:15px; background:#1b5a31; color:#fff; text-align: center; font-weight:700; border-radius: 10px; display:block;}
@media screen and (min-width: 768px), print {
	footer { padding: 60px 0 50px;} footer .btn_info{margin:0 auto 80px;}
	footer .btn_info{ width:290px; height:70px; padding:25px 0; font-size:18px; margin:10px auto 80px;}
}

#copyright{text-align: center; font-size: 2.5vw; }
@media screen and (min-width: 768px), print {
	#copyright{ font-size: 1.4rem;}
}


/*---------------------*/
/* print 			   */
/*---------------------*/
@media print{
	body{padding-top: 0;  font-size: 1.5vw;}
	main{ width: 100%; }
	header{ position:static; top: 0; left: 0; z-index: 2000; }
	.container{margin: 0 auto 70px;}
	.history .container{margin: 0 auto 70px;}
	h1 a{font-size: 2.5vw;}
	.openbtn1{display: none}
	#top h2, #top h3, .access .address .com_name{font-size: 2.5vw;}
	#privacy h2, #solicitation h2{font-size: 2.5vw;}
	#privacy h3, #solicitation h3{font-size: 2.3vw;}
	.earth, .flag{  text-align: center; margin: 0 auto;}
	.earth:before{ width: 3em; height: 3em; top:1em; margin: 0px 20px 0 0px;  background: url("../images/icon_earth.png") no-repeat; background-size: contain;}
	.flag:before{ width: 3em; height: 3em; top:1em; margin: 0px 20px 0 6px;  background: url("../images/icon_flag.png") no-repeat; background-size: contain;}
	main h4{font-size: 2.2vw;}
	#g-nav { width: 560px; position: static; height: auto; background: transparent; ;}
	#g-nav ul {position: static; transform: translate(0, 0); flex-direction: row;}
	#g-nav li{list-style: none; text-align: left; }
	#g-nav li a{color: #fff; padding: 0 0 0 2em; font-size: 1.9vw;}
	footer { padding: 20px 0 20px;}
}

