@charset "utf-8";

/* CSS Document */
body {
	font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
    font-size: 17px;
    line-height: 28px;
    margin: 0;
    -webkit-text-size-adjust: 100%;
	color : #000;
overflow-wrap:break-word;
}

body * {
    box-sizing: border-box;
}
.img{
	text-align : center;
	margin : 15px 0px;
}
.clear{
	clear : both;
}
.center{
	text-align : center;
}
.clumn_btn_center{
	text-align : center;
	width : 360px;
	margin : 20px auto;
}
.kakudai_font{
 text-align : center;
}
.right{
	text-align : right;
}
.section_space{
	height : 40px;
}
.section_space_m{
	height : 20px;
}
/* PCとSPの改行切り替え */
@media screen and (min-width: 640px){	
  .br-pc { display:block; }
  .br-sp { display:none; }
}
@media screen and (max-width: 640px){	
  .br-pc { display:none; }
  .br-sp { display:block; }
}
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width:640px) {
.pc { display: none !important; }
.sp { display: block !important; }
}
.image_area {
width: 240px;
display: block;
vertical-align: bottom;
}
.image_area2 {
width: 340px;
display: block;
vertical-align: bottom;
}
.image_area3 {
width: 300px;
display: block;
vertical-align: bottom;
}
@media only screen and (min-width: 737px){
.image_right {
float: right;
margin: 25px 0 21px 25px;
}
.image_left {
float: left;
margin: 0 25px 30px 0;
}
}
@media only screen and (max-width: 736px){
.image_right {
float: none;
margin: 25px auto 0px;
}
.image_left {
float: none;
margin: 25px auto 0px;
}
}

/* 文字装飾設定 */
	.fomr_text{
		padding : 20px 30px;
		font-size : 18px;
		font-weight : bold;
	}
	.font_mini{
		font-size : 85%;
	}
.font-m{
	font-size : 1.3em;
}
.font_l{
	font-size : 1.5em;
}
@media only screen and (max-width:640px) {
.font-m{
	font-size : 1.2em;
}
.font_l{
	font-size : 1.4em;
}
}
.color-orange{
	color : #fd4e01;
}
.color-yellow{
	color : #ffff00;
}
.marker_yellow{
	background : #ffff00;
}
.marker-yellow-hoso{
	background:linear-gradient(transparent 60%, #ffff00 60%);
}
.faq-a {
    width: 30px;
    height: 30px;
    background: #cc0000;
    padding: 1px 10px;
    color: #fff;
    font-size: 22px;
    margin-right: 10px;
    border-radius: 50%;
    justify-content: center; /* 水平方向に中央揃え */
    align-items: center; /* 垂直方向に中央揃え */
	overflow: hidden; 
}
.faq-q{
	color : #ffffff;
	font-size : 115%;
	font-weight : bold;
}
.color-red{
	color : #cc0000;
}

.komejirushi li {
	list-style:none;
	text-indent:-20px;
	margin-bottom : 20px;
}
.komejirushi li:before{
	content:"※"
}

#main_fv{
	width : 100%;
	height : 420px;
	background : #333;
}
#footer {
    width: 100%;
    background: #333;
    padding: 10px 0px;
    text-align: center;
    color: #fff;
 margin-bottom : 0px;
}
.footer_catch{
	font-size : 20px;
	line-height : 32px;
	font-weight : bold;
	text-align : center;
}
.footer_catch_s{
	font-size : 17px;
	line-height : 20px;
	font-weight : bold;
	text-align : center;
 margin-bottom : 10px;
 margin-top : 0px;
 line-height : 200%;
}
.footer_catch_s a{
 text-decoration : none;
 color : #020202;
 font-size : 20px;
}
.footer_navmenu_area{
	background-color : #fcf9df;
	border-top : 3px solid #d1ac46;
	padding : 10px 0px;
 margin-top : -10px;
}
.footer_navmenu_area_in{
	width : auto;
	margin : 10px auto;
}
.footer_navmenu_area_in{
	list-style : none;
	text-align : center;
}
.footer_navmenu_area_in a{
 text-decoration : none;
 color : #020202;
}

@media only screen and (max-width: 640px) {
#footer {
    width: 100%;
    background: #333;
    padding: 10px 0px;
    text-align: center;
    color: #fff;
 margin-bottom : 70px;
 font-size : 9px;
}
.footer_navi_area{
width : 100%;
padding : 20px 0px 0px 0px;
	background-color : #ffffff;
 margin-top : -30px;
}
.footer_navi_area img{
 width : 90%;
 padding : 10px;
}
.footer_navmenu_area_in{
	width : auto;
	margin : 0px 15px;
}
.footer_navmenu_area_in li{
 float : left;
 width : 48%;
 padding : 8px 0px;
 list-style : none;
 text-align : center;
}
}
.ac_title_class{
	line-height : 20px;
}
.space_m{
	height : 20px;
}
.space_l{
	height : 40px;
}
.left{
	text-align : left;
}
/* スマホフッター固定ボタン------------------------------------------------------------ */
@media screen and (min-width:640px){
	.footer_kotei_area{
		display: none !important;
}	
}
@media screen and (max-width:640px){
.footer_kotei_area {
    position: fixed;
    bottom: 0;
    left: 0;
    overflow: hidden;
    width: 100%;
    z-index: 2;
	background-color : rgba(5,31,139,0.8);
	display: none;
 padding : 1px 7px 0 7px;
}
.kotei_foot_message{
 color : #ffffff;
 font-size : 1.1em;
 font-weight : 600;
 text-align : center;
 padding : 5px 0px 0px 0px;
}
	.footer_line{
		float : left;
		width : 33%;
     padding : 0px 7px 10px 7px;
		text-align : center;
	} 
 	.footer_contact{
		float : left;
		width : 33%;
     padding : 0px 7px 10px 7px;
		text-align : center;
	}
	.footer_tel{
		float : left;
		width : 33%;
     padding : 0px 7px 10px 7px;
		text-align : center;
	}
}
/* 表 */
table {
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 90%;
	margin: 0 0 1.8em;
	width: 100%;
	text-align : left;
    background : #ffffff;
}
caption {
	margin-bottom: 0.6em;
}
table th, table td {
	border: solid 1px #555151;
	padding: 1em 1.2em;
}
th {
	background-color: #ffffff;
	font-weight: 600;
	text-align: left;
}
/* 会社情報追加------------------------------------------------------------ */
.company_jyouhou{
 width : 870px;
 margin : 20px auto;
}
.company_jyouhou_left{
 float : left;
 width : 40%;
 margin : 8px;
}
.company_jyouhou_right{
 float : left;
 width : 56%;
 margin : 8px;
}
.access_flow{
 width : 1080px;
 margin : 20px auto;
}
.access_flow li{
 float : left;
 width : 32%;
 margin : 5px;
 list-style : none;
}
.access_title{
 text-align : center;
 font-size : 24px;
 font-weight : bold;
 margin : 20px 0px;
 background-color : #07a796;
 padding : 10px 0px;
 color : #ffffff;
}
.jyouhou_text{
	padding : 0px;
 margin-top : -20px;
}
 .jyouhou_text ul{
  margin-top : 0px;
  margin-left : 20px;
 }
.jyouhou_text li{
 list-style-type: disc;
}
 .a_text{
  font-size : 90%;
  line-height : 150%;
 }
.access_mini_title{
	background-color : #10ae96;
 font-size : 18px;
	color : #ffffff;
	padding : 4px 10px;
	margin-bottom : 10px;
 margin-top : 15px;
}
 .google_map{
  width : 1080px;
  padding : 10px;
  margin : -20px auto 30px;
  text-align : center;
 }

@media only screen and (max-width: 640px) {
.company_jyouhou{
 width : auto;
 margin : -20px 15px 0px 15px;
}
.company_jyouhou_left{
 float : none;
 width : auto;
 margin : 10px;
}
.company_jyouhou_right{
 float : none;
 width : auto;
 margin : 10px;
}
.access_flow{
 width : auto;
 margin : 10px;
}
.access_flow li{
 float : none;
 width : auto;
 margin : 5px;
 list-style : none;
}
.access_title{
 text-align : center;
 font-size : 1.1em;
 line-height : 28px;
 font-weight : bold;
 margin : 20px 0px;
}
.jyouhou_text{
	padding : 0px;
 margin-top : -20px;
}
 .jyouhou_text ul{
  margin-top : 0px;
  margin-left : -20px;
 }
 .a_text{
  font-size : 95%;
  line-height : 150%;
  padding-bottom : 10px;
 }
 .google_map{
  width : auto;
  padding : 15px;
 }
}
.company_motto_btn {
  position: relative;
  display: inline-block;
	margin : 0px 10px 30px 10px;
  padding: 0.8em 0.8em;
  text-decoration: none;
 font-size : 1.0em;
  color: #FFF;
  background: #cc0000;/*e‰2*/
  border: solid 1px #cc0000;/*c・?e‰2*/
  border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
  text-shadow: 0 1px 0 rgba(0,0,0,0.2);
}
.company_motto_btn::after{
 content : '\025b6';
 padding-left : 20px;
 font-weight : bold;
}
.company_motto_btn a:hover{
 text-decoration : none;
  color: #FFFFFF!important;
}

/* お客様の声------------------------------------------------------------ */
.custom_type_title{
 width : 100%;
 text-align : center;
 background-color : #5ebcde;
 line-height : 0;
}
@media only screen and (max-width: 640px) {
.custom_type_title{
margin-top : 0px;
 line-height : 0;
}
}
.site-voice-main{
    width :auto;
    margin : 10px;
}
.custom_type_voice_area {
 width : auto;
	background: #ffffff!important;
	border : 1px solid #555151;
	border-radius : 10px;
 margin : 20px auto!important;
 padding : 10px;
}

/*.custom_type_voice_area h2.entry-title {
	font-size : 22px;
    line-height : 30px;
    color : #ffffff;
    background-color : orange!important;
    padding : 8px 10px;
    margin-bottom : 15px;
}*/
.custom_type_voice_area h2.entry-title {
	display : none
}

.customers_area{
 width : 100%;
}
.customers_area_left{
 float : left;
 width : 48%;
 margin : 5px;
 text-align : center;
}
.custom_type_voice_area .customers_title {
font-size : 22px;
	color : #cc0000;
	font-weight : bold;
	line-height : 30px;
 padding : 10px 0px;
	text-align : left;
}
.custom_type_voice_area .customers_image {
	background: #ffffff!important;
 width : 100%;
 margin : 0 auto;
}

.custom_type_voice_area .customers_image span {
	display: block;
    text-align : center;
    font-size : 14px;
 padding : 8px 0px;
 margin-bottom : 10px;
}
.cus_descri_title{
 font-size : 15px;
 font-weight : 600;
 border-bottom : 2px dotted #555151;
 margin-bottom : 10px;
}
.customers_area_right{
 float : left;
 width : 48%;
 margin : 5px;
}
.bukken_title{
 font-weight : 600;
 margin-bottom : 8px;
}

.custom_type_voice_area .customers_description {
	background: #ffffff!important;
    text-align : left;
}


.custom_type_voice_area table {
	background: #ffffff!important;
}

.custom_type_voice_area table td {
	width: 50%;
 padding : 5px 10px
}

.more_btn{
 text-align : center;
 margin : 10px 0px 10px 0px;
 font-weight : 600;
}

.custom_type_voice_area .staff_area {
	background: #ffffff!important;
}
.staff_area h3{
 font-size : 18px;
 border-bottom : 1px solid #555151;
}
.staff_area_left{
 float : left;
 width : 19%;
 margin : 8px;
}
.staff_name{
 font-size : 13px;
 text-align : center;
 padding-top : 4px;
}
.staff_area_right{
 float : left;
 width : 70%;
 margin : 8px;
}
 .staff_comment{
font-size : 15px;
  line-height : 25px;
  text-align : left;
 }


.custom_type_voice_area .enquete_area {
	background: #ffffff!important;
}
.enquete_image{
 text-align : center;
 margin : 20px 0px;
}
.enquete_area {
	display: none;
}
.more_btn:hover {
	cursor: pointer;
	opacity: 0.7;
}
.enquete_image img{
 text-align : center;
 margin : 10px 0px;
 border-top : 1px solid #555151;
 padding-top : 30px;
}
.enquete_faq dl{
 width : auto;
 margin : 35px 0px;
 text-align : left;
}
.enquete_faq dt{
 background-color : #039eca;
 color : #ffffff;
 padding : 15px 10px;
 width : 100%;
 text-align : left;
 font-size : 1em;
}
.enquete_faq dd{
 background-color : #ffffff;
 padding : 15px 10px;
 margin-bottom : 15px;
 width : 100%;
}
.bukken_contact{
	text-align : center;
	margin : 10px 0px;
}
.voice_contact_btn {
  position: relative;
  display: inline-block;
	margin : 30px 10px 10px 10px;
  padding: 1.0em 2.5em;
  text-decoration: none;
  color: #FFF;
  background: #cc0000;/*色*/
 font-size : 20px;
 font-weight : bold;
  border: solid 1px #cc0000;/*線色*/
  border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
  text-shadow: 0 1px 0 rgba(0,0,0,0.2);
}
.voice_contact_btn a:hover{
 text-decoration : none;
  color: #FFFFFF!important;
}
.clear{
	clear : both;
}
.voice_waku{
 width : 900px;
 margin : 20px auto;
}
	}

@media screen and (max-width:640px){
.custom_type_title{
 width : 100%;
 text-align : center;
 background-color : #5ebcde;
 margin-top : 90px;
}
.site-voice-main{
    width : auto;
    margin : 20px 10px;
}
.custom_type_voice_area {
	background: #ffffff!important;
 margin-top : 20px;
}
.custom_type_voice_area h2.entry-title {
	font-size : 17px;
    line-height : 27px;
    color : #ffffff;
    background-color : orange!important;
    padding : 8px 10px;
    margin-bottom : 15px;
}

.customers_area{
 width : 100%;
}
.customers_area_left{
 float : none;
 width : auto;
 margin : 10px;
}
.custom_type_voice_area .customers_image {
	background: #ffffff!important;
 width : 100%;
 margin : 0 auto;
}

.custom_type_voice_area .customers_image span {
	display: block;
    text-align : center;
    font-size : 14px;
 padding : 8px 0px;
 margin-bottom : 10px;
}
.cus_descri_title{
 font-size : 15px;
 font-weight : 600;
 border-bottom : 2px dotted #555151;
 margin-bottom : 5px;
}
.customers_area_right{
 float : none;
 width : auto;
 margin : 10px;
}
.bukken_title{
 font-weight : 600;
 margin-bottom : 8px;
 margin-top : 20px;
}

.custom_type_voice_area .customers_description {
	background: #ffffff!important;
}


.custom_type_voice_area table {
	background: #ffffff!important;
}

.custom_type_voice_area table td {
	width: 50%;
 padding : 5px 10px
}

.more_btn{
 text-align : center;
 margin : 10px 0px 10px 0px;
 font-weight : 600;
}

.custom_type_voice_area .staff_area {
	background: #ffffff!important;
}
.staff_area h3{
 font-size : 16px;
 border-bottom : 1px solid #555151;
}
.staff_area_left{
 float : left;
 width : 20%;
 margin : 3px;
}
.staff_name{
 font-size : 13px;
 text-align : center;
 padding-top : 4px;
}
.staff_area_right{
 float : left;
 width : 73%;
 margin : 3px 3px 3px 10px;
}
 .staff_comment{
font-size : 15px;
  line-height : 22px
 }


.custom_type_voice_area .enquete_area {
	background: #ffffff!important;
}
.enquete_image{
 text-align : center;
 margin : 20px 0px;
}
.enquete_faq{
 width : 100%;
}
.enquete_faq dl{
 width : auto;
 margin : 15px 20px;
}
.enquete_faq dt{
 background-color : #039eca;
 color : #ffffff;
 padding : 15px 10px;
}
.enquete_faq dd{
 background-color : #fcf7e4;
 padding : 15px 10px;
 margin-bottom : 15px;
}
.bukken_contact{
	text-align : center;
	margin : 10px 0px;
}
.voice_contact_btn {
  position: relative;
  display: inline-block;
	margin : 30px 10px 10px 10px;
  padding: 1.0em 6em;
  text-decoration: none;
  color: #FFF;
  background: #cc0000;/*色*/
  border: solid 1px #cc0000;/*線色*/
  border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
  text-shadow: 0 1px 0 rgba(0,0,0,0.2);
}
.voice_contact_btn a:hover{
 text-decoration : none;
  color: #FFFFFF!important;
}
.clear{
	clear : both;
}
.voice_waku{
 width : auto;
 margin : 15px;
}	
}

/* Pagination */
.pagination {
	color: #000000;
	font-size: 100%;
	margin-bottom: 3rem;
	text-align : center;
}
.pagination a {
	color: inherit;
	text-decoration: none;
}
.pagination .page-numbers {
	display: inline-block;
	padding: 8px 18px;
	margin-right: 6px;
}
.pagination .prev,
.pagination .next {
	display: inline-block;
}
.pagination .dots {
	padding-left: 10px;
	padding-right: 10px;
}
.pagination a.page-numbers {
	border: solid 1px #0000cc;
}
.pagination a.page-numbers:hover {
	border-color: #0000cc;
	color: #000000;
}
.pagination .current {
	background-color: #0000cc!important;
	border: solid 1px #0000cc;
	color: #ffffff;
	font-weight: 700;
}
@media screen and (min-width: 640px) {
	.pagination .page-numbers {
		display: inline-block;
	}
}

/* Page Links */
.page-links {
	color: #777;
	clear: both;
	font-size: 90%;
	margin-bottom: 3rem;
	margin-top: 4rem;
}
.page-links .page-numbers {
	background-color: #f4f5f6;
	border: solid 1px #ddd;
	color: #333;
	font-weight: 700;
	padding: 8px 16px;
	margin-left: 4px;
}
.page-links a {
	color: inherit;
	text-decoration: none;
}
.page-links a .page-numbers {
	background-color: transparent;
	border: solid 1px #eee;
	color: #777;
	font-weight: normal;
}
.page-links a .page-numbers:hover {
	border: solid 1px #ddd;
	color: #333;
}

/* Post Navigation */
.post-navigation {
	margin-bottom: 3rem;
}
.post-navigation a {
	color: inherit;
	text-decoration: none;
}
.post-navigation a:hover {
	color: #111;
}
.post-navigation .nav-previous {
	margin-bottom: 3rem;
}
.post-nav-title {
	color: #999;
	font-size: 80%;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	margin-bottom: 8px;
}
@media screen and (min-width: 640px) {
	.post-navigation .nav-previous {
		float: left;
		width: 48%;
		margin-bottom: 0;
	}
	.post-navigation .nav-next {
		float: right;
		width: 48%;
		text-align: right;
	}
}
.kuchikomi_area{
	text-align : center;
}

     #sidebar{
      display : none;
     }
a.link_back {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 120px;
	margin: 10px auto 30px;
	padding: 0.5rem 2rem;
	font-weight: bold;
	border: 1px solid #555151;
	color: #fff;
	background: #333;
	border-radius: 12px;
	transition: 0.5s;
}
a.link_back:hover {
	color: #333;
	background: #f8f8f8;
}
.danzen_box{
margin: 0.5em auto;
padding:1.2em 2em;
position: relative;
border:1px solid #333;
 font-size : 1.5em;
 background : #fff;
 width : 880px;
}

.danzen_box:before{
border-bottom:30px solid transparent;
border-left:30px solid #333;
content: '';
display: block;
position: absolute;
top: 0px;
left: 0px;
}

.danzen_box:after{
border-left:30px solid transparent;
border-bottom:30px solid #333;
content: '';
display: block;
position: absolute;
bottom: 0px;
right: 0px;
}

/*フォーム関連*/
.textarea-container {
  position: relative;
}

textarea {
  width: 100%;
  padding: 10px;
  white-space: pre-wrap;
  z-index: 1; /* テキストエリアを前面に表示 */
}

.placeholder {
  position: absolute;
  top: 10px;
  left: 10px;
  pointer-events: none;
  opacity: 0.5;
  z-index: 2; /* プレースホルダーをテキストエリアの上に表示 */
}

/*メディア*/
	.media-news-ttl{
		background : #333;
		color : #fff;
		padding : 5px 0px;
		text-align : center;
		margin : 30px auto 15px;
	}
	.media-news-link{
		width : 120px;
		border-radius : 15px;
		margin : 10px auto;
		background : #333;
		color : #fff;
		text-align  center;
		font-size : 13px;
		padding : 2px 0px;
	}
.media-news-link a{
	color : #fff;
	text-decoration : none;
}

/*追加css2023_12*/
::placeholder {
   color: #aaa;
}
.b-no-btn a {
    background: orange;
 text-decoration : none;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 20px auto;
    max-width: 330px;
    padding: 10px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
}
.b-no-btn a:hover {
  background: orange;
  color: #FFF;
}
.b-no-btn a:hover:after {
  right: 1.4rem;
}

.tekiyou-jyouken {
    margin: 0;
    background: #ffffff;
	border : 1px solid #555151;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22)!important;
}
.tekiyou-jyouken .box-title {
    font-size: 1.2em;
	background : #333;
    padding: 7px 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
	.tekiyou-jyouken-in{
		padding : 20px;
	}
.space-s{
	height : 12px;
}
.tekiyou-jyouken {
    margin: 0;
    background: #ffffff;
    border: 1px solid #555151;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22)!important;
}
.tekiyou-jyouken .box-title {
    font-size: 1.2em;
    background: #333;
    padding: 7px 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.tekiyou-jyouken-in {
    padding: 20px;
    max-height: calc(1.5em * 7); /* 初期表示行数 × 行の高さ */
    overflow: hidden;
    position: relative;
}
.tekiyou-jyouken-in.collapsed {
    max-height: none;
}
.expand-button {
    text-align: center;
    margin-top: 10px;
}
.expand-button button {
    background: #333;
    color: #FFF;
    border: none;
    padding: 5px 20px;
    cursor: pointer;
	margin-bottom : 20px;
}