/*----------------------------
/*
/*---------------------------*/

*{box-sizing: border-box;}

html, body {
    position: relative;
    height: 100%;
    background:#fff;

}
body {
    margin: 0;
    padding: 0;
	font-family:"Sawarabi Mincho","Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:15px;
	letter-spacing:1.5px;
	/* line-height:180%; */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a{
	color:#333;
	text-decoration: none;
}


.wrap{
		max-width:1600px;
		margin:0 auto;
}



/*--globalmenu---*/


nav{
	width:750px;
	overflow:hidden;
	float:right;
	vertical-align: middle;
	}

nav ul{
	margin : 0 auto;
    display:-webkit-box;/*--- Androidブラウザ用 ---*/
    display:-ms-flexbox;/*--- IE10 ---*/
    display: -webkit-flex;/*--- safari（PC）用 ---*/
    display:flex;
    -webkit-box-pack:justify;/*--- Androidブラウザ用 ---*/
    -ms-flex-pack:justify;/*--- IE10 ---*/
    -webkit-justify-content:space-between;/*--- safari（PC）用 ---*/
    justify-content:space-between;
    align-items:center;
    flex-wrap: wrap;

	}

nav li{
	text-align:center;
	float:left;
	font-weight:bold;
	margin:10px 0 0;
}

nav .tel span a{
	padding-top:0 !important;
	font-size:26px;
	color:#77a325;
}


nav li a, nav{
	color:#333;
	font-size:15px;
}


nav li a, nav li span{
	text-align:center;
	margin-left:5px;
	margin-bottom : 5px;
}

nav li a:hover{
	color:#ff9200
}

footer{
	color:#fff;
	background:#6e9115;
	text-align:center;
	padding:10px;
}


/*-----*/



.Top_header{
	width:100% !important;
	max-width:100%;
	top:0;
	padding:20px 20px;
	background:rgba(255,255,255,0.9);
    -webkit-box-shadow: 0 -20px 10px 20px rgba(50,50,50,0.25);
    -moz-box-shadow: 0 -20px 10px 20px rgba(50,50,50,0.25);
    box-shadow: 0 -20px 10px 20px rgba(50,50,50,0.25);
   	position:fixed;
	z-index:999;
}

.Top_header h1, footer h1{
	color:#000;
	font-weight:bold;
	font-size:25px;
	display:inline-block;
	vertical-align: middle;
}

.Top_header h1 img, footer h1 img{
	max-height:50px;
	margin-right:15px;
	vertical-align: middle;
}



/*------------------------*/

h2{
	font-size:35px;
	display:block;
	padding:0 0 15px;
	margin:0 auto;
	text-align:center;
	color:#77a325;
	letter-spacing:3px;
}
h2 span{
	border-bottom : 1px solid #77a325;
	padding-bottom : 10px;
	margin-bottom : 20px;
}

h3{
	font-size:28px;
	margin-bottom : 30px;
	color:#222;
}

/*------------------------*/

body > div{
	margin:0 auto;
	overflow:hidden;
}


#index_main{
	position:relative;
	max-width:100%;
	min-height:80%;
	overflow:hidden;
	background:url(../images/photo03.jpg) no-repeat center top;
	background-size:cover;
}


.green{
	width:100%;
	font-size:32px;
	position:absolute;
	top:40%;
	text-align:center;
	line-height:1.6em;
	color:#fff;
	font-weight:bold;
	text-shadow: 1px 1px 1px #6a8426;
	color:#fff;
	background:rgba(129, 166, 42, 0.5);
	padding:20px 0;
}



.info{
	max-width:1600px;
	margin:0 auto;
	font-size:16px;
	color:#555;
}

.info > div{
	padding:2%;
}
.info .fl{
	float:left;
	width:50%;
	max-height:400px;
	overflow:hidden;
	min-height:200px;
}


.info .fr{
	float:right;
	width:50%;
	max-height:400px;
	overflow:hidden;
	min-height:200px;
}

.info .fl img, .info .fr img{
	width:100%;
	height:auto;
}

.cb{
	clear:both;
}


.p30{
	padding:8% 2% 0 !important;
}



#top01{
	padding:80px 0 60px;
}



#top02 h2{
	color:#fff;
	text-shadow: 1px 1px 1px #27430d;
}
#top02 ol {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
  margin-top:20px
}

#top02 li {
  margin-bottom: 10px;
  position: relative;
  padding:25px;
  font-size:20px;
  border-bottom : 1px dotted #ddd;
  background:rgba(255, 255, 255, 0.7);
  letter-spacing:1.6px;
  text-shadow: 1px 1px 1px #fff;
  line-height:1.5em;
}


#top02 li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #77a325;
  color: #fff;
  display: block;
  float: left;
  line-height: 26px;
  margin-right:10px;
  text-align: center;
  height: 26px;
  width: 26px;
  font-weight:bold;
  border-radius: 50%;
}




#top02{
	margin-top:60px;
	padding:80px 0 60px;
	background:url(../images/back.jpg) no-repeat;
	background-size:cover;

}



#top03{
	margin:20px 0;
/* 	background:#f1f1e9; */
}


#top04{
	text-align:center;
	margin:20px 0;
  padding:3px 0;
}


#top04 table{
	width:690px;
	border:1px solid #ddd;
	margin: 10px auto;
	font-size:16px;
}

#top04 th{
	background:#95ba38;
	padding:10px;
	border:1px solid #ddd;
	color:#fff;
}

#top04 td{
	padding-left:20px;
	border:1px solid #ddd;
}

#top04 td span{
	color:#ffd500;
}

#top05{
	margin-top:50px;
  padding: 30px 0;
  background: #f1f1e9;
}

.medicine{
	max-width:1000px;
  width: 90%;
  margin: 0 auto;
/*   text-align: center; */
}


.medicine h3{
  font-size:151%;
	margin: 30px 0 10px;
	color:#222;
}

.medicine p{
  font-size: 100%;
  margin: 5px 0 50px;
}

.tabletl td{
	text-align:left;
}

.tc th{
	text-align:center;
}

.tc td{
  padding-left: 0px !important;
}

.info2{
	max-width:1600px;
	margin:10px auto 0;
	font-size:14px;
	line-height:2.2em;
	color:#555;
	overflow:hidden;
}

.info2 > div{
	padding:2%;
}
.info2 .fl{
	float:left;
	width:50%;
	max-height:400px;
	overflow:hidden;
	min-height:200px;
}


.info2 .fr{
	float:right;
	width:50%;
	max-height:400px;
	overflow:hidden;
	min-height:200px;
}

.info2 .fl img, .info2 .fr img{
	width:100%;
	height:auto;
}


#top03{
	/* padding:10px 0 40px */
}
#top03 h3{
	margin-top:17px;
}


#top05 h2{
	padding:40px 0 50px !important;
}

/*-------------------------------------------------------------------------------------------------------------*/

@media screen and (max-width: 1200px) {
.wrap{
	padding:0 20px;
	}



/*---1200-------*/
}


@media screen and (max-width: 1000px) {
table {
    width: 100%;
}

.photo01, .photo02{
    flex-wrap: wrap;
}

.green{
	padding:0 30px;
	font-size:27px;
}

.green br{
	display:none;
}

}


@media screen and (max-width: 900px) {



}



@media only screen and (max-device-width:480px) and (orientation:landscape) {



}



@media screen and (orientation: landscape) {

}



@media screen and (max-width: 800px) {



.wrap{
		width:100%;

}



nav {
   width:100%;
    float: none;
    margin-top:5px;
}

nav li a {
    padding: 10px 2px;
    font-size: 14px;
}



.Top_header h1, footer h1 {
    font-size: 14px;
}

h2 {
    font-size: 23px;
    text-align: center;
    margin: 20px 0 40px;
}

table {
    margin: 0 auto;
    border: 1px solid #517fb3;
    width: 100%;
}

th {
    width: 30%;
    font-size: 12px;
}

th, td {
    padding: 10px 10px;
}

.photo01 li {
    width: 50%;
}

.shohin {
    margin-top: 20px;
    padding: 20px 0 40px;
    box-shadow: none;
}

.photo02 img {
    height: auto;
    width:100%;
}

.photo02 li {
    font-size: 14px;
}

.mt80 {
    margin-top: 40px;
}

.company {
    margin-top: 40px;
    padding: 20px 20px 40px;
    box-shadow:none;
}

footer {
    padding: 50px 0 0;
}

.Top_header {
    padding: 20px 0 10px;
    text-align:center;
}



/*---1200-------*/
}



@media screen and (max-width: 1000px) {

.p30 {
    padding:0 !important;
}

h3 {
    font-size: 28px;
    margin-bottom: 11px;
    color: #222;
}

.info > div {
    padding: 0 2%;
}

h2 {
    margin: 0 auto 40px;
 }

#top04 table {
    width: 100%;
    border: 1px solid #ddd;
    margin: 30px auto;
    font-size: 16px;
}

#top04 th {
    padding: 5px;
 }

#top04 td {
    padding: 5px;
    font-size: 14px;
}

th {
    width:auto;
    font-size: 14px;
}

th, td {
    padding: 10px 10px;
}


/*---1000-------*/
}



@media screen and (max-width: 800px) {

	nav .tel span a {
	    padding-top: 0 !important;
	    font-size: 20px;
	    color: #77a325;
	}



nav .tel span a {
    padding-top: 0 !important;
    font-size: 20px;
    color: #77a325;
}



.Top_header {
    position:static;
}

#index_main {
    min-height: 50%;
}

.green {
    top: 34%;

}

#top01 {
    padding: 9px 0 60px;
}

h2 {
    margin: 20px auto 0px;
}



}


@media screen and (max-width: 780px) {

.info .fl {
    float: none;
    width:100%;
    height:auto;
    padding:0 2% !important;
}

.info .fr {
    float: none;
    width:100%;
    padding:0 2% !important;
}


.info2 .fl {
    float: none;
    width:100%;
    height:auto;
    padding:0 2% !important;
}

.info2 .fr {
    float: none;
    width:100%;
    padding:0 2% !important;
}

#top03 {
    margin: 10px 0;
    background: #fff;
}

h3 {
    margin: 30px auto 20px;
}

.info {
    line-height: 1.6em;
}

#top01 {
    padding: 9px 0 0px;
}

#top02 {
     margin-top: 0px;
     padding:30px 0 30px;

}

#top04 {
    text-align: center;
    margin-top: 0px;
    padding: 20px 0 10px;
}

#top04 br{
	display:none;
}



}



@media screen and (max-width: 600px) {

.Top_header .wrap{
	padding:0 !important;
}

nav li a, nav li span {
    margin-left: 0px;
}

nav li a {
    padding: 6px 2px;
    font-size: 14px;
}

.tel{
	display:none;
}

nav li{
	width:48%;
	margin:0.5% 1% 0;
}

nav li a{
	display:block;
	width:100%;
	background:#f3f5e6
}


.Top_header {
    position:static;
}



#top02 li {
    padding: 10px;
    font-size: 16px;
}

.green {
    top: 39%;
    padding: 0 30px;
    font-size: 17px;
}

#index_main {
    min-height: 300px;
}

h3 {
    font-size: 22px;
    margin-bottom: 5px;
}

.info .fr br{
	display:none;
}

.info .fr {
    max-height:auto;
    overflow: hidden;
    min-height: auto;
    padding-bottom : 20px !important;
}



}

@media screen and (max-width: 480px) {

#index_main {
    min-height: 65%;
}

.green {
    top: 42%;
    padding: 0 0px;
    font-size: 19px;
    font-weight:bold;
}

h3 {
    font-size: 22px;
    margin-bottom: 12px;
}

#top03 h3 {
    margin-top: 0px;
}

.info2{
	line-height:1.5em;
}

.info2 br{
	line-height:2em;
}

.Top_header h1 img, footer h1 img {
    max-height: 42px;
    margin-right: 15px;
    vertical-align: middle;
}

#top01 h3 {
    margin: 0px auto 20px !important;
}

.tabletl{
	border:0 !important;
}
.tabletl th, .tabletl td{
	display:block;
	width:100%;
	border:0 !important;
}

#top02 li {
    background: rgba(255, 255, 255, 0.9);
}


.info2 .fl {
    padding: 0 7% !important;
}



}
