@charset "utf-8";


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

/*===============================================
●会社案内
===============================================*/
@media screen and (min-width: 1201px){ 

 .company {
	width: 99%;
 }

 .comenu {
	width: 100%;
 }

}


@media screen and (min-width: 781px){ 

 .comenu li {
	width: 48%;
	margin: 1%;
 }

 .comenu li a {
	font-size: 20px;
	padding: 8% 0;
 }

 .comenu li a .mark {
	width: 45%;
 }

}


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

 .comenu li {
	width: 50%;
 }

 .comenu li a {
	font-size: 18px;
	padding: 5% 0;
 }

 .comenu li a .mark {
	width: 65%;
 }

}


@media screen and (min-width: 481px){

 .comenu {
	display: flex;
	flex-wrap: wrap;
 }

 .comenu li a {
	width: 95%;
	margin: 3% auto;
 }

 .comenu li a p {
	top: 30px;
 }

}


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

 .comenu li a, 
 .comenu li a:hover {
	width: 90%;
 }
 
 .comenu li a {
	font-size: 15px;
	margin: 5% auto;
	padding: 8.5%;
 }
 
 .comenu li a p {
	top: 20px;
 }

 .comenu li a .mark {
	width: 60%;
	padding: 8%;
 }

}


/*===============================================
○ごあいさつ
===============================================*/
@media screen and (min-width: 781px){ 

 .president-messe h1 {
	font-size: 22px;
 }

 .president-messe h2 {
	font-size: 20px;
 }

 .president-messe p {
	font-size: 14px;
 }

 .president-name h3 {
	font-size: 20px;
 }

 .president-name h3 span {
	font-size: 18px;
 }

 .president-name p {
	font-size: 15px;
 }

}


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

 .president-messe h1 {
	font-size: 20px;
 }

 .president-messe h2 {
	font-size: 18px;
 }

 .president-messe p {
	font-size: 14px;
 }

 .president-name h3 {
	font-size: 18px;
 }

 .president-name h3 span {
	font-size: 16px;
 }

 .president-name p {
	font-size: 14px;
 }

}

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

 .president-messe h1 {
	font-size: 16px;
 }

 .president-messe h2 {
	font-size: 16px;
 }

 .president-messe p {
	font-size: 13px;
 }

 .president-name h3 {
	font-size: 16px;
 }

 .president-name h3 span {
	font-size: 14px;
 }

 .president-name p {
	font-size: 13px;
	line-height: 2em;
 }

}


/*===============================================
○会社概要
===============================================*/
@media screen and (min-width: 781px){ 

 .profile{
	font-size: 15px;
 }

 .profile dt{
	width: 20%;
 }

 .profile dd{
	margin-left: 20%;
 }

}


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

 .profile{
	font-size: 14px;
 }

 .profile dt{
	width: 25%;
 } 

 .profile dd{
	/*width: 75.1%;*/
	margin-left: 25%;
 }

}


@media screen and (min-width: 481px){ 

 .profile dt{
	float: left;
	clear: both;
	padding: 15px 10px;
 } 

 .profile dd{
	padding: 15px 20px;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
 }

}


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

 .profile{
	font-size: 12px;
 }

 .profile dl{
	border-right: 1px solid #ccc;
 }

 .profile dt{
	width: 100%;
	padding: 3%;
 } 

 .profile dd{
	width: 100%;
	padding: 3%;
	margin: 0;
	line-height: 2em;
 }

}


/*===============================================
○事業概要
===============================================*/
@media screen and (min-width: 481px){ 

 .business h4 {
	font-size: 16px;
	padding: 10px 15px;
 }

 .business p, .business li {
	font-size: 15px;
 }

}


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

 .business h3 {
	font-size: 16px;
 }
 
 .business h4 {
	font-size: 15px;
	padding: 8px 10px;
 }
 
 .business p, .business li {
	font-size: 13px;
	line-height: 1.75em;
 }

}


/*===============================================
○沿革
===============================================*/
@media screen and (min-width: 781px){ 

 .history div div {
	width: 70%;
 }

 .history div h {
  	font-size: 21px;
  	margin-top: 7px;
 }

 .history span {
  	font-size: 12px;
 }

 .history div dl dt {
	font-size: 14px;
 }

 .history div dl dd {
	font-size: 14px;
 }
  
 .history div dl dd:after {
	top: 8px;
 }

}


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

 .history .timeline {
	margin-top: 15px;
 }

 .history div h {
  	font-size: 18px;
 }

 .history span {
  	font-size: 12px;
 }

 .history div dl dt {
	font-size: 13px;
 }

 .history div dl dd {
	font-size: 13px;
 }

 .history div dl dd:after {
	top: 6px;
 }

}


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

 .history div div {
	width: 60%;
 }

 .history div h {
  	margin-top: 8px;
 }

}


@media screen and (min-width: 481px){ 

 .history div h {
  	float: left;
 }

 .history div div {
	float: right;
	border-left: 1px solid #dcdcdc;
 }

 .history dl {
	margin: 0 0 25px -60px;
	zoom: 1;
 }

 .history div dl dt {
	width: 40px;
 }

 .history div dl dd {
	margin-left: 30px;
 }

}


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

 .history div {
	margin: 15px 0;
 }

 .history img + div {
	margin-top: 0;
 }

 .history div:last-child {
	margin-bottom: 0;
 }

 .history div:not(:last-child) {
	border-bottom: 1px solid #dcdcdc;
 }

 .history div dl dd {
	margin-left: 15px;
 }

}


/*===============================================
○所在地
===============================================*/
@media screen and (min-width: 1201px){ 

 .mapimg {
	width: 60%;
 }

}


@media screen and (min-width: 781px) and (max-width: 1200px){ 

 .mapimg {
	width: 60%;
 }

 .address p {
	padding: 15px 60px;
 }

}


@media screen and (min-width: 781px){ 

 .address p {
	font-size: 15px;
	padding: 15px 35px;
 }

}


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

 .address div:before {
	display: none;
 }

}


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

 .access {
	width: 50%;
 }

 .address div {
	width: 90%;
 }

 .address p {
	font-size: 2vw;
	padding: 8px 20px;
 }

}

@media screen and (min-width: 481px){

 .access {
	display: table-cell;
	vertical-align: middle;
	position: relative;
 }

}

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

 .location {
	flex-direction: column;
 }
 
 .address p {
	font-size: 15px;
	text-align: center;
 }

 .maps {
	margin: 5% auto;
 }

}


/*===============================================
○グループ会社
===============================================*/
@media screen and (min-width: 781px){ 

 .group {
	width: 98%;
 }

 div.groupdata {
	width: 70%;
 }

 div.groupimg {
	width: 30%;
 }

 div.groupimg img {
	width: 200px;
 }

}


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

 div.groupdata p {
	font-size: 14px;
 }

}


@media screen and (min-width: 481px){

 .group ul li {
	padding: 20px;
 }
 
 .group ul li h4 {
	margin-top: 0;
 }

 div.groupdata p {
	margin-bottom: 0;
 }

 div.groupimg {
	text-align: right;
 }

}


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

 div.groupdata {
	width: 60%;
 }

 div.groupimg {
	width: 40%;
 }

 div.groupimg img {
	width: 150px;
 }

}


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

 .group ul li {
	flex-direction: column;
	padding: 0 15px;
 }

 div.groupimg {
	margin-bottom: 20px;
 }

}
