@charset "utf-8";
/* =================================== */
/*　ページ共通  */
/* =================================== */
#page-contents {
	clear: both;
	font-family: 'Zen Kaku Gothic Antique', sans-serif;
	font-weight: 400;
}
#page-contents a {
}
#page-contents p {
	line-height:2.0em;
}
@media screen and (max-width:760px){
#page-contents p {
	font-size: 14px;
	font-size: 1.4rem;
}
}
#page-contents p.text {
	text-align: center;
}
#page-contents p.pagetop-text {
	padding-bottom: 50px;
}
#page-contents p.pagetop-message {
	font-family: 'Zen Old Mincho', serif;
	font-size: 30px;
	font-size: 3.0rem;
	padding-bottom: 50px;
	line-height: 1.5em;
}
#page-contents .sec-area {
	padding-top: 100px;
}
#page-contents .sec-area_end {
	padding-top: 100px;
	padding-bottom: 100px;
}
#page-contents .section {
	max-width: 1000px;
	margin:0 auto;
	padding:50px 15px 0 15px;
}
p.text-mini {
	font-size: 13px;
	padding: 5px 0;
}
@media screen and (min-width:760px){
.br_m {
	display: none;
	}}
@media screen and (max-width:760px){
#page-contents p.pagetop-message {
	font-size: 20px;
	font-size: 2.0rem;
}
}
/*　ヘッダータイトル  */
#page-title {
	position: relative;
	margin-bottom: 20px;
	height: 250px;
	background-color: #fffa3c;
}
#page-title .title-image {
	height: 100%;
}
#page-title .title-midashi {
	display: flex;
	align-items: center;
	padding-left: 10%;
	height: 100%;
}
#page-title h1 {
	font-size:30px;
	font-size: 3.0rem;
	font-family: "Sawarabi Mincho", serif;
	position: relative;
	z-index: 1;
}
#page-title h1.pagetitle::after {
	position: absolute;
	background-repeat: no-repeat;
	background-size: cover;
    content: "";
    width: 500px;
    height: 150px;
	top: 50%;
    transform: translateY(-50%);
	z-index: -1;
}
@media screen and (max-width:1000px){
#page-title h1.pagetitle::after {
    width: 200px;
    height: 60px;
	top: 100%;
}
#page-title .title-midashi {
	padding-left: 5%;
}
}
@media screen and (max-width:760px){
#page-title {
	height: 150px;
}
#page-title h1 {
	font-size:23px;
	font-size: 2.3rem;
}
}
@media screen and (max-width:640px){
#page-title h1.pagetitle::after {
	content:none;
	}
}
/*　各タイトルイメージ　*/
.title-company {
	background: url(../img/title-company.png) no-repeat right bottom / contain;
}
h1.midashi-company::after {
	background: url(../img/titleri-company.png) no-repeat;
	left: 3em;
}
.title-service {
	background: url(../img/title-service.png) no-repeat right bottom / contain;
}
h1.midashi-service::after {
	background: url(../img/titleri-service.png) no-repeat;
	left: 3em;
}
.title-news {
	background: url(../img/title-news.png) no-repeat right bottom / contain;
}
h1.midashi-news::after {
	background: url(../img/titleri-news.png) no-repeat;
	left: 3em;
}
.title-contact {
	background: url(../img/title-contact.png) no-repeat right bottom / contain;
}
h1.midashi-contact::after {
	background: url(../img/titleri-contact.png) no-repeat;
	left: 3em;
}
.title-recruit {
	background: url(../img/title-recruit.png) no-repeat right bottom / contain;
}
h1.midashi-recruit::after {
	background: url(../img/titleri-recruit.png) no-repeat;
	left: 3em;
}
/*　パンくず  */
#pan {
	margin-left: 10%;
	font-size: 13px;
	box-sizing: border-box;
}
#pan ul.pan-list li {
	display: inline-block;
	padding: 0 1em 0 0;
}
#pan ul.pan-list li::after {
	content: ">";
	padding-left: 1em;
}
#pan ul.pan-list li:last-child::after {
	content: none;
}
@media screen and (max-width: 1000px) {
#pan {
	margin-left: 5%;
	font-size: 11px;
}
}

/*　見出し */
#page-contents .midashi-wrapper {
	text-align:center;
}
#page-contents h2 {
	font-size:30px;
	font-size: 3.0rem;
	padding-bottom: 30px;
	font-weight:500;
	display:inline-block;
}
@media screen and (max-width: 760px) {
	#page-contents h2 {
	font-size:25px;
	font-size: 2.5rem;
}
}
#page-contents h3 {
	font-size:30px;
	font-size: 3.0rem;
	font-weight:500;
	display:inline-block;
	padding-bottom: 20px;
	position: relative;
}
#page-contents h3::after {
position: absolute;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  width: 100px;
  height: 3px;
  display: block;
  background-color: #fffa3c;
  margin-top: 10px;
}
@media screen and (max-width: 760px) {
	#page-contents h3 {
	font-size:25px;
	font-size: 2.5rem;
}
}
#page-contents h4 {
	font-size:23px;
	font-size: 2.3rem;
	font-weight:500;
	padding-bottom: 20px;
}
#page-contents h5 {
	font-size:20px;
	font-size: 2.0rem;
	font-weight:500;
	margin:10px 0 10px 0;
}
/*　テーブル */
#page-table {
	border-collapse: collapse;
	width:100%;
}
#page-table th, #page-table td {
	border-bottom:1px solid #999999;
	font-weight:normal;
	padding:15px 25px;
}
#page-table th {
	border-bottom:2px solid #333333;
	text-align:left;
	white-space: nowrap;
}
#page-table tr:nth-child(even) {
	background: #f7f7f7;
}

@media screen and (max-width: 640px) {
#page-table {
    border-top: solid 1px #999999;
	width:100%;
  }
#page-table th {
	border-bottom: none;
	border-top: none;
    display: block;
    width: 100%;
	box-sizing:border-box;
	font-weight: 500;
	padding:10px 15px;
}
#page-table td {
	border-top: none;
　　border-bottom: none;
    display: block;
    width: 100%;
	box-sizing:border-box;
	padding:0 15px 10px 15px;
  }
}

/*写真比率固定*/
#page-contents .aspect-out {
	position: relative;
	width: 100%;
	overflow:hidden;
	}
#page-contents .aspect-out:before {
	content:"";
	display: block;
	padding-top: 66%;/*3:2比率*/
	}
#page-contents .aspect-in {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform : translate(-50%,-50%);
	transform : translate(-50%,-50%);
	width: 100%;
}
/* ----------------------------------- */
/*　お知らせ一覧  */
/* ----------------------------------- */
#news ul.newslist li a {
	display: -webkit-flex;
    display: flex;
	padding: 15px;
}
#news ul.newslist li a:hover {
	opacity: 0.7;
}
#news ul.newslist li {
	border-bottom: 1px solid #999999;
}
#news .news-day {
	display: block;
	white-space: nowrap;
	padding-right: 2em;
}
@media screen and (max-width:760px){
#news ul.newslist li a {
    flex-direction: column;
}
#news .news-day {
	padding-bottom: 0.5em;
}
}
/* ----------------------------------- */
/*　お知らせ記事  */
/* ----------------------------------- */
#page-news .section-news {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 15px;
	display: flex;
}
#news-contents {
	width: 78%;
	padding-right: 8%;
	box-sizing: border-box;
}
#news-sidemenu {
	width: 22%;
	padding-bottom: 100px;
}
@media screen and (max-width:1000px){
#page-news .section-news {
	flex-direction: column;
}
#news-contents ,
#news-sidemenu	{
	width: 100%;
	padding-right: 0;
}
}
#news-contents .listlink-area {
	padding: 50px 0 100px 0;
	text-align: center;
}
/*　見出し */
#page-news h1 {
    font-size: 25px;
    font-size: 2.5rem;
    font-weight: 500;
    margin: 20px 0 50px 0;
	position: relative;
}
#page-news h1::after {
    position: absolute;
  left: 0;
  content: "";
  width: 150px;
  height: 3px;
  display: block;
  background-color: #fffa3c;
  margin-top: 10px;
}
@media screen and (max-width: 480px) {
#page-news h1 {
	font-size:20px;
	font-size: 2.0rem;
}
}
#page-news h2 {
	text-align: left;
	font-weight:500;
	font-size:23px;
	font-size: 2.3rem;
	display:block;
	padding: 5px 10px;
	background-color: #fffa3c;
	margin: 10px 0 20px 0;
}
#page-news h3 {
	text-align: left;
	font-weight:500;
	font-size:23px;
	font-size: 2.3rem;
	display:block;
	padding: 5px 10px;
	border-top: 1px solid #999999;
	border-bottom: 1px solid #999999;
	margin: 10px 0 20px 0;
}
#page-news h3::after {
	content: none;
}
#page-news h4 {
	text-align: left;
	font-weight:500;
	font-size:20px;
	font-size: 2.0rem;
	display:block;
	padding: 5px 10px;
	border-left: 5px solid #fffa3c;
	margin: 10px 0 15px 0;
}
#page-news h5 {
	text-align: left;
	font-weight:700;
	font-size:20px;
	font-size: 2.0rem;
	display:inline-block;
	padding: 5px 10px;
	background: linear-gradient(transparent 60%, #fffa3c 60%);
	margin: 10px 0 15px 0;
}
#page-news h6 {
	text-align: left;
	font-weight:700;
	font-size:18px;
	font-size: 1.8rem;
	display:block;
	padding: 5px 0;
	margin: 10px 0 15px 0;
}
#news-contents ol ,
#news-contents ul{
	padding-left: 1em;
}
#news-contents ul li {
	list-style: square;
}
#news-contents ol li {
	list-style:decimal;
}
#news-contents hr {
	border-bottom: 1px solid #aaaaaa;
	border-top: none;
}
#news-contents p {
	padding-bottom: 1.5em;
}
#news-contents .news-entry a {
	text-decoration: underline;
}
#news-contents .news-entry a:hover {
	color: #999999;
}
#news-contents img {
	padding: 10px 0;
}
#news-sidemenu h3 {
	display: block;
	border-top: none;
	border-bottom: 3px solid #000000;
	padding-bottom: 10px;
	margin-bottom: 20px;
	font-size:25px;
	font-size: 2.5rem;
}
/*サイドメニュー*/
#news-sidemenu h3::after {
	content: none;
}
#news-sidemenu .news-newlist li {
	border-bottom: 1px solid #999999;
	padding: 5px 0;
}
#news-sidemenu .side-archivelist {
	padding-top: 50px;
}
#news-sidemenu .side-archivelist li {
	padding: 5px 0;
}
#news-sidemenu ul li a:hover {
	color: #999999;
}
#news-sidemenu .side-insta {
	padding-bottom: 30px;
}
#news-sidemenu a.insta-link {
	display: block;
	padding: 10px;
	border: 1px solid #000000;
	display: flex;
  align-items: center;
	justify-content: center;
}
#news-sidemenu .side-insta a img {
	max-width: 160px;
	padding-right: 20px;
}
#news-sidemenu .side-insta a:hover {
	border: 1px solid #999999;
}
@media screen and (max-width:1000px){
#news-sidemenu a.insta-link {
	width: 230px;
	margin: 0 auto;
}
}
/*SNSシェア*/
.share-button {
	text-align:right;
	padding-bottom:30px;
	overflow:hidden;
}
.share-content {
	display:inline-block;
}
.share-button p {
	float:left;
	color:#737373;
	font-size:13px;
	line-height:20px;
	padding:0 10px;
}
ul.sns-button {
	float:left;
}
ul.sns-button li {
	float:left;
	padding: 0 5px;
}
ul.sns-button li img {
	max-width:30px;
}
/*記事ない場合*/
.empty {
	text-align:center;
	padding:100px 0;
}

/* ----------------------------------- */
/*　会社概要  */
/* ----------------------------------- */

/*　理念  */
#company-rinen .flex-item_m {
	justify-content: center;
	align-items: center;
}
#company-rinen  .rinen-image {
	padding-right: 30px;
	box-sizing: border-box;	
}
#company-rinen  .rinen-image img {
	max-width: 180px;
}
#company-rinen  .rinen-copy {
	font-size: 30px;
	font-size: 3.0rem;
	line-height: 1.8em;
	font-family: 'Zen Old Mincho', serif;
}
#company-rinen  .rinen-list {
	background-color: #f7f7f7;
	padding: 50px 40px;
	margin-top: 50px;
	font-family: "Sawarabi Mincho", serif;
  font-weight: 400;
	font-size: 18px;
	font-size: 1.8rem;
}
@media screen and (max-width: 760px) {
#company-rinen  .rinen-image {
	text-align: center;
}
#company-rinen  .rinen-copy {
	box-sizing: border-box;
	text-align: center;
	font-size: 23px;
	font-size: 2.3rem;
}
#company-rinen  .rinen-list {
	
	padding: 30px;
}
}
/*　企業方針  */
#company-houshin .houshin-list dl {
	display: flex;
  flex-wrap: wrap;
  width: 100%;
}
#company-houshin .houshin-list dt {
  width: 25%;
	padding: 0;
  margin-bottom: 20px;
	font-weight: 500;
}

#company-houshin .houshin-list dd {
  width: 75%;
  padding: 0;
	margin-left: 0;
  margin-bottom: 20px;
}
#company-houshin span.houshin {
	padding: 0 0.5em;
    background: linear-gradient(transparent 50%, #fffa3c 50%);
}
@media screen and (max-width:1000px){
#company-houshin .houshin-list dt ,
	#company-houshin .houshin-list dd {
		width: 100%;
	}
}
img.hyoushiki {
	max-width: 370px;
}
/*　アクセスマップ  */
#company-map .accessmap {
    position: relative;
    width: 100%;
    padding-top: 56.25%;/* 16:9 */
    height: 0;
}

#company-map .accessmap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* ----------------------------------- */
/*　サービス案内  */
/* ----------------------------------- */
#service-top .flex-item_service {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    overflow: hidden;
}
#service-top .serviceimg-area {
	padding-top: 50px;
}
#service-top .service-cont {
	width: 33.33333%;
	padding: 5px ;
	box-sizing: border-box;
    overflow: hidden;
}
@media screen and (max-width:760px){
#service-top .serviceimg-area {
	padding-top: 0;
}
#service-top .service-cont {
	width: 100%;
	padding: 50px 50px 0 50px ;
	box-sizing: border-box;
    overflow: hidden;
}
}

/*　各サービス  */
#service .service-section {
	margin-bottom: 50px;
}
#service .service-text {
	width: 60%;
}
#service .service-img {
	width: 35%;
}
#service .service-text h4 {
	position: relative;
	display: flex;
  align-items: center;
}
#service .service-text h4::before {
	content: "";
  width: 50px;
  height: 3px;
  display: block;
  background-color: rgb(255, 250, 60);
  margin-right: 20px;
}
#service ul.service-list {
	padding-left: 1em;
	padding-top: 10px;
}
#service ul.service-list li {
	padding-top: 10px;
	list-style-type: disc;
}
@media screen and (max-width:760px){
#service .box-1 {
		order:2;
	}
#service .box-2 {
		order:1;
	}
}
/*　施工対応エリア  */
#work-area .area-wrapper {
	background-color: rgb(247, 247, 247);
  padding: 100px 0px;
}
#work-area .area-image {
	padding:  0 40px;
	box-sizing: border-box;
}
#work-area .area-image img {
	max-width: 400px;
}
@media screen and (max-width:760px){
#work-area .area-image {
	text-align: center;
}
#work-area .area-image img {
	max-width: 300px;
}
}



/* ----------------------------------- */
/*　採用情報  */
/* ----------------------------------- */
/*　トップ  */
#recruit-message  .flex-item_m {
	align-items: center;
}
#recruit-message  .message-text {
	width: 55%;
}
#recruit-message  .message-image {
	width: 40%;
}
#recruit-message  .recruit-list li {
	padding: 5px 0 5px 40px;
	margin: 5px 0;
	font-size: 23px;
	font-size: 2.3rem;
	font-weight: 500;
	display: block;
	background: linear-gradient(transparent 50%, #fffa3c 50%);
	  background: url(../img/icon-list.png) left 0px top 10px no-repeat;  background-size: 25px auto;
}
#recruit-message  .recruit-list li span {
	background: linear-gradient(transparent 50%, #fffa3c 50%);
	padding: 5px 10px;
}
@media screen and (max-width:1000px){
#recruit-message  .recruit-list li {
	font-size: 18px;
	font-size: 1.8rem;
	}
}
/*　要項  */
#recruit-youkou h4 {
	text-align: center;
	display: block;
	background-color: #000000;
	color: #ffffff;
	font-size: 20px;
	font-size: 2.0rem;
	padding: 10px;
}
#recruit-youkou .youkou {
	padding-top: 50px;
}
@media screen and (max-width:760px){
#recruit-youkou h3 {
	font-size: 18px;
	font-size: 1.8rem;
}
}
/*　応募方法  */
#recruit-oubo .oubo-wrapper {
	background-color: #f7f7f7;
	padding: 100px 0;
}
#recruit-oubo .contact-area {
	padding: 50px;
	background-color: #FAF4EC;
	text-align: center;
}
#recruit-oubo p {
	text-align: center;
}
#recruit-oubo .buttonlink-area {
	padding-bottom: 30px;
	text-align: center;
	
}
/*　テーブル */
#recruit-youkou table.youkou-table {
	border-collapse: collapse;
	width:100%;
}
.youkou-table th, .youkou-table td {
	border-bottom:1px solid #999999;
	font-weight:normal;
	padding:25px 25px;
}
.youkou-table th {
	border-bottom:2px solid #333333;
	text-align:left;
	white-space: nowrap;
}
.youkou-table tr:nth-child(even) {
	background: #f7f7f7;
}

@media screen and (max-width: 640px) {
#recruit-youkou table.youkou-table {
    border-top: solid 1px #999999;
	width:100%;
  }
.youkou-table th {
	border-bottom: none;
	border-top: none;
    display: block;
    width: 100%;
	box-sizing:border-box;
	font-weight: 700;
	padding:10px 15px;
}
.youkou-table td {
	border-top: none;
　　border-bottom: none;
    display: block;
    width: 100%;
	box-sizing:border-box;
	padding:0 15px 10px 15px;
  }
}
/* ----------------------------------- */
/*　お問い合わせ  */
/* ----------------------------------- */
#contact-form tr:nth-child(even) {
	background: #ffffff;
}

/*　フォーム(iOSリセット) */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
/*　フォーム */
#contact-form .required {
	display:inline-block;
	padding:0 10px;
	margin-left:15px;
	color:#ffffff;
	background-color:#ff6d00;
	font-size: 13px;

}
#contact-form input,
#contact-form textarea  {
	font-size: 16px;
	background-color:#f0f0f0;
	border: none;
	padding:15px;
	margin: 5px 0;
	border-radius:5px;
}
#contact-form input[type="file"] {
	background-color:#ffffff;
	font-size: 1.5rem;
}
#contact-form .long {
	width:100%;
	box-sizing:border-box;
}
#contact-form .short {
	width:50%;
	box-sizing:border-box;
}
#contact-form textarea  {
	width:100%;
	box-sizing:border-box;
}
#contact-form input::placeholder  {
	color:#a6a6a6;
}
#contact-form textarea::placeholder  {
	color:#a6a6a6;
}
#contact-form ul.radio-list {
	overflow: hidden;
}
#contact-form ul.radio-list li {
	float:left;
	padding:5px 0 5px 15px;
}

#button-area {
	display: flex;
	justify-content: center;
	align-items: center;
	padding-top:50px;
}
#button-area span {
	display: block;
	text-align: center;
}

#button-area input[type="submit"] {
padding: 20px 40px;
  box-sizing: border-box;
  background-color: #000000;
  font-size: 18px;
  color: #ffffff;
  display: inline-block;
  text-align: center;
	width: 250px;
	cursor: pointer;
	border: none;
	border-radius: 0;
}

/*　個人情報の取扱  */
#privacy h5 {
	font-size: 18px;
	font-size: 1.8rem;
	padding:  10px 0 5px 0;
}
#privacy .privacy-contents {
	background-color: #f7f7f7;
	border: 2px solid #dddddd;
	padding: 30px;
}
#privacy .privacy-contents p {
	padding-bottom: 1em;
}

/* ----------------------------------- */
/*　施工一覧  */
/* ----------------------------------- */
#page-workslist .flex-item_news {
	display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
overflow: hidden;
}
#page-workslist .top-entry-link {
	width: 30%;
    margin: 0 5% 5% 0;
    overflow: hidden;
}
@media screen and (max-width: 1000px){
#page-workslist .top-entry-link {
  width: 47%;
  margin: 0 6% 6% 0;
  overflow: hidden;
}
}
#page-workslist .top-entry-link a {
	color: #111111;
}
#page-workslist .top-entry-link a:hover img.scale {
	transform: scale(1.07);
}
@media screen and (min-width: 1000px) {
#page-workslist .top-entry-link:nth-of-type(3n) ,
#page-workslist .top-entry-link:nth-of-type(6n) ,
#page-workslist .top-entry-link:nth-of-type(9n) ,
#page-workslist .top-entry-link:nth-of-type(12n) {
  margin-right: 0;
}
}
@media screen and (max-width: 1000px) {
#page-workslist .top-entry-link:nth-of-type(2n) ,
#page-workslist .top-entry-link:nth-of-type(4n) ,
#page-workslist .top-entry-link:nth-of-type(6n) ,
#page-workslist .top-entry-link:nth-of-type(8n) ,
#page-workslist .top-entry-link:nth-of-type(10n) ,
#page-workslist .top-entry-link:nth-of-type(12n){
  margin-right: 0;
}
}

#page-workslist .top-entry-titlearea {
  display: block;
  padding-top: 20px;
}
#page-workslist .top-entry-name {
  background-color: #FFB72F;
  color: #ffffff;
  padding: 2px 20px;
  display: inline-block;
  line-height: 20px;
  vertical-align: middle;
  font-size: 13px;
}
#page-workslist .top-entry-title {
  display: block;
  padding-top: 5px;
  line-height: 1.4em;
}
@media screen and (max-width: 760px){
#page-workslist .top-entry-name {
  padding: 2px 5px;
  font-size: 11px;
}
}

/*ページャー*/
#pager {
	text-align: center;
	padding: 50px 0;
}
#pager li {
	display: inline-block;
	padding: 10px 20px;
}
#pager li a {
  box-sizing: border-box;
  font-size: 16px;
  display: block;
  text-align: center;
  width: 100%;
}
#pager li a:hover {
	color: #999999;
}