@charset "utf-8";
/* CSS Document */

.prev_next {
width:100%;
height:auto;
flex-direction:row;
display:flex;
justify-content:center;
}

.prev {
    margin-right:10px;
}

.nbox1 {
	background-color:#EFEFEF;
	padding:8px 20px;
	font-size:17px;
	font-weight:bold;
	color:#000;
    border-radius: 7px;
	border:2px solid #999;
}

.top-voice_box {
float:left;
width:48%;
margin-right:2%;
}

.no_click {
pointer-events: none;
}

.top_bnr_box1 {
width: 98%;
margin:40px auto;
text-align:center;
}

.top_bnr_box2 {
width: 100%;
margin:40px auto 30px;
text-align:center;
}

#award_bg {
width: 100%;
padding-top:20px;
text-align:center;
background-image:url(../images/award_bg.jpg);
position:relative;
}

#award {
padding-bottom:60px;
}

#award img {
width: 92%;
max-width:700px;
}

.p_content_m_bg2 {
width: 100%;
font-size:16px;
text-align:center;
margin:10px auto 10px;
}
.p_content_m_bg {
width: 100%;
font-size:16px;
text-align:center;
margin:20px auto 10px;
}
.p_content_m {
width: 100%;
font-size:22px;
font-weight:bold;
display: flex;
align-items: center; /* 垂直中心 */
justify-content: center; /* 水平中心 */
}
.p_content_m:before, .p_content_m:after {
  border-top: 3px double #999 ;
  content: "";
  width: 30px; /* 線の長さ */
}
.p_content_m:before {
  margin-right: 15px; /* 文字の右隣 */
}
.p_content_m:after {
  margin-left: 15px; /* 文字の左隣 */
}


.works_link {
width:92%;
margin:15px auto 15px;
font-size:15px;
}

.works_link a {
color:#FFFFFF;
text-decoration:none;
display:block;
}

.works_link1 {
width:49%;
float:left;
text-align:center;
background-color:#87BA64;
border-radius: 7px;
margin-right:2%;
margin-bottom:10px;
padding:10px;
box-sizing: border-box;
}
.works_link2 {
width:49%;
float:left;
text-align:center;
background-color:#87BA64;
border-radius: 7px;
margin-bottom:10px;
padding:8px;
box-sizing: border-box;
}
.works_link3 {
width:49%;
float:left;
text-align:center;
background-color:#87BA64;
border-radius: 7px;
margin-right:2%;
padding:8px;
box-sizing: border-box;
}
.works_link4 {
width:49%;
float:left;
text-align:center;
background-color:#87BA64;
border-radius: 7px;
padding:8px;
box-sizing: border-box;
}



.sp_top_main_bg {
margin-top:70px;
background-image:url(../images/sp_top_main_bg.png);
}

.sp_top_main {
text-align:center;
padding-top:10px;
}

.sp_top_main_wave {
width:100%;
position:relative;
transform: translateY(1px);
}

.top_greeting_bg {
padding: 15px 0 0;
  text-align:center;
  background-image:url(../images/top_greeting_bg.png);
}

.top_greeting {
width:92%;
margin:0px auto;
text-align:left;

}


.readmore {
position: relative;
width:92%;
margin:0 auto;
color:#FFF;
font-size:19px;
text-align:left;
padding: 0 0 60px;
}

.readmore label {
  position: absolute;
  border: 1px solid #00285D;
  display: table;
  left: 50%;
  bottom: 0;
  margin: 0 auto;
  width: 250px;
  padding: 10px 0;
  color: #454C83;
  text-align: center;
  border-radius: 7px;
  background-color: #FFF;
  transform: translateX(-50%);
  cursor: pointer;
  z-index: 1;
  font-size: 17px;
}

.readmore label::before{
  content: '続きを見る →';
}

.readmore input[type="checkbox"]:checked ~ label::before {
  content: '元に戻す →';
}

.readmore input[type="checkbox"]{
  display: none;
}

.readmore-content {
  position: relative;
  height: 650px;
  overflow: hidden;
  color:#FFF;
}

.readmore input[type="checkbox"]:checked ~ .readmore-content {
  height: auto;
}

.readmore-content::before {
  position: absolute;
  display: block;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 60px;
  background: linear-gradient( rgba(73, 96, 132,0) 0%, rgba(73, 96, 132,0.8) 50%, #496084 100%);
}

.readmore input[type="checkbox"]:checked ~ .readmore-content::before {
  display: none;
}


.top_point_bg {
background-image:url(../images/top_point_bg.png);
background-position:right bottom;
background-repeat:no-repeat;
background-size:cover;
padding:50px 0 160px;
position:relative;
}

.top_point {
text-align:center;
width:92%;
margin:0 auto;
}

.top_point_wave {
width:100%;
transform: translateY(1px);
position:absolute;
bottom:0px;
}

.top_service_bg_n {
	width:100%;
	text-align:center;
	margin:0px auto;
	background-image:url(../images/service_bg.png);
}

.top_service_bg {
	width:100%;
	text-align:center;
	margin:0px auto;
	background-color:#548235;
	padding:0;
}

.top_service_bnr {
	width:86%;
	text-align:center;
	margin:20px auto 40px;
	padding:0px;
}

.top_service_wave {
width:100%;
position:relative;
transform: translateY(1px);
}

.top_contents_bg {
	width:100%;
	text-align:center;
	margin:0px auto;
  text-align:center;
  background-image:url(../images/top_greeting_bg.png);
}

.top_contents_bnr {
	width:86%;
	text-align:center;
	margin:20px auto 40px;
	padding:0px;
}

.top_contents_wave {
width:100%;
position:relative;
transform: translateY(1px);
}

.top_instagram_bg {
	width:100%;
	text-align:center;
	margin:0px auto;
}

.top_instagram {
	width:92%;
	text-align:center;
	margin:0px auto;
}


.top_access_bg {
  margin:0px auto;
  text-align:center;
  background-image:url(../images/top_greeting_bg.png);
}

.top_access {
width:92%;
margin:0 auto;
text-align:left;
color:#FFFFFF;
}


.footer_bg {
	width:100%;
	background-image:url(../images/footer_bg.png);
	background-repeat:no-repeat;
	background-size: cover;
    background-position:top;
	padding:50px 0 150px;
	font-size:14px;
	line-height:180%;
}

.footer_bg a {
	color:#FFF;
	text-decoration:none;
}

.footer_link_bg {
	width:86%;
	margin:0 auto 30px;
	font-size:14px;
	line-height:210%;
}

.footer_link1 {
	width:100px;
	float:left;
}

.footer_link2 {
	width:140px;
	float:left;
}

.footer_link3 {
	width:100px;
	float:left;
}

.copyright_text {
	width:100%;
	margin:0 auto;
	text-align:center;
	font-size:12px;
	margin:0 auto;
	background-color:#475944;
	padding:7px
}

.copyright_com {
	color:#1F4E79;
}



#footer_logo{
	width:100%;
	text-align:center;
	margin:20px auto;
}

#footer_logo img{
	max-width:100%;
	max-height:72px;
	margin-top:2px;
}














.top_con_m {
	font-size:30px;
	line-height:100%;
}

.top_con_m span {
	font-size:15px;
	color:#CC0000;
	line-height:220%;
}

.top_con_m p {
	font-size:17px;
	text-align:left;
	line-height:160%;
}

.gift_pdf {
	width:100%;
	text-align:center;
	margin-bottom:20px;
}

.top-blog_img {
	text-align:center;
}

.top-blog_text {
	text-align:center;
	padding:13px 10px 15px;
	background-color:#FFFFFF;
}

.top-blog a {
	color:#000;
	text-decoration:none;
}

.top-suggestions_img {
	text-align:center;
}

.top-suggestions_img img {
	width:100%;
	height: 270px;
    object-fit: cover;
    box-sizing: border-box;}

.top-suggestions_text {
	text-align:center;
	padding:13px 10px 15px;
	background-color:#FFFFFF;
		overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.top-suggestions a {
	color:#000;
	text-decoration:none;
}

.top-works_img {
	text-align:center;
}

.top-works_img img {
	width:100%;
	height: 270px;
    object-fit: cover;
    box-sizing: border-box;}

.top-works_text {
	text-align:center;
	padding:13px 10px 15px;
	background-color:#FFFFFF;
	overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.top-voice_text {
	text-align:center;
	padding:13px 10px 15px;
	background-color:#FFF;
	overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
	color:#000;
}

.top_news_bg_n4 a {
	color:#000;
	text-decoration:none !important;
}

.top-works a {
	color:#000;
	text-decoration:none;
}

.p-works_img {
	text-align:center;
}

.p-works_img img {
	width:100%;
	height: 270px;
    object-fit: cover;
    box-sizing: border-box;}

.p-works_text {
	text-align:center;
	padding:13px 10px 15px;
	background-color:#0075C2;
	box-sizing: border-box;
}

.p-works a {
	color:#FFF;
	text-decoration:none;
}


.p_qa_bg {
	width:100%;
	text-align:center;
	margin:0px auto 50px;
	padding:50px 0;
  background-image:url(../images/top_greeting_bg.jpg);
  background-repeat:no-repeat;
  background-size:cover;
}

.p_qa_bg2 {
	width:100%;
	text-align:center;
	margin:0px auto;
	padding:15px 0 10px;
background-color:#E2F0D9;
}

.top-plan_bg {
	width:100%;
	text-align:center;
	margin:0px auto;
	background-color:#000;
	padding:0;
}

.top-plan_bg2 {
	width:100%;
	text-align:center;
	margin:50px auto 0;
	background-color:#E2F0D9;
	padding:50px 0;
}

.top-plan {
	width:92%;
	line-height:160%;
	text-align:left;
	margin:0px auto;
}

.top-plan_m {
width:100%;
font-size:18px;
font-weight:bold;
border-bottom:1px solid #999;
padding-bottom:10px;
margin-bottom:10px;
}

.top-plan_bnr {
	width:100%;
	text-align:center;
	margin:20px auto 40px;
	padding:0px;
}

.top-plan_bnr2 {
	width:100%;
	text-align:center;
	margin:30px auto 0;
	padding:0px;
	background-color:#E2F0D9;
}

.top-plan_bnr img {
	width:92%;
}

.top-plan_bnr2 img {
	width:92%;
}

#top_service_an {
  padding-top: 70px;
  margin-top:-70px;
}

#access_an {
  padding-top: 75px;
  margin-top:-75px;
}

.top_box1{
	width:100%;
	text-align:center;
	padding-top:80px;
	margin:0px auto;
	background-color:#BFDAEF;
}

.top-main_wave {
width:100%;
position:absolute;
transform: translateY(2px);
bottom:20px;
z-index:100;
}

.top-main_wave2 {
width:100%;
position:absolute;
/* transform: translateY(1px); */
bottom:0px;
z-index:100;
}

.top-plan_wave {
width:100%;
position:relative;
transform: translateY(-1px);
background-color:#000;
}

.top-plan_wave2 {
width:100%;
position:relative;
transform: translateY(1px);
}

.top-works_wave {
width:100%;
position:relative;
transform: translateY(-1px);
background-color:#a6a6a6;
}

.top-works_wave2 {
width:100%;
position:relative;
transform: translateY(1px);
}

.top-suggestions_wave {
width:100%;
position:relative;
transform: translateY(-1px);
background-color:#a6a6a6;
}

.top-suggestions_wave2 {
width:100%;
position:relative;
transform: translateY(1px);
}

.top_box2{
	width:100%;
	text-align:center;
	margin:40px auto 0;
}

.top_link{
	width:100%;
	text-align:center;
	margin:20px auto 0;
}

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

.top_btn_c7 {
    position: relative;
    /* border: 1px solid #000; */
    width: 250px;
    height: 40px;
    line-height: 40px;
    display: flex;
    text-align: center;
    background: #4CC884;
    font-size: 17px;
    text-decoration: none;
    margin: 0 auto;
    border-radius: 7px;
}

.top_btn_c7_text {
  width: 100%;
  height: 100%;
  color: #FFF;
  z-index: 10;
    line-height: 40px;
}

.top_btn_c7_text:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0;
  display: block;
  background: #94DEB5;
  z-index: -1;
  transition: .2s;
    border-radius: 7px;
}

.top_btn_c7_text:hover {
  color: #FFF;
}

.top_btn_c7_text:hover:before {
  width: 100%;
}

.top_btn_c {
    position: relative;
    width: 250px;
    height: 40px;
    line-height: 40px;
    display: flex;
    text-align: center;
    background: #7E9879;
    font-size: 17px;
    text-decoration: none;
    margin: 0 auto;
    border-radius: 7px;
}

.top_btn_c_text {
  width: 100%;
  height: 100%;
  color: #FFF;
  z-index: 10;
    line-height: 40px;
}

.top_btn_c_text:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0;
  display: block;
  background: #9DB19A;
  z-index: -1;
  transition: .2s;
    border-radius: 7px;
}

.top_btn_c_text:hover {
  color: #FFF;
}

.top_btn_c_text:hover:before {
  width: 100%;
}

.top_btn_c2 {
    position: relative;
    border: 1px solid #333;
    width: 250px;
    height: 40px;
    line-height: 40px;
    display: flex;
    text-align: center;
    background: #FFF;
    font-size: 17px;
    text-decoration: none;
    margin: 0 auto;
    border-radius: 7px;
}

.top_btn_c2_text {
  width: 100%;
  height: 100%;
  color: #000;
  z-index: 10;
  line-height: 40px;
}

.top_btn_c2_text:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0;
  display: block;
  background: #0075C2;
  z-index: -1;
  transition: .2s;
  border-radius:7px;
}

.top_btn_c2_text:hover {
  color: #FFF;
}

.top_btn_c2_text:hover:before {
  width: 100%;
}

.top_btn_c3 {
    position: relative;
    /* border: 1px solid #000; */
    width: 250px;
    height: 40px;
    line-height: 40px;
    display: flex;
    text-align: center;
    background: #1F4E79;
    font-size: 17px;
    text-decoration: none;
    margin: 0 auto;
    border-radius: 7px;
}

.top_btn_c3_text {
  width: 100%;
  height: 100%;
  color: #FFF;
  z-index: 10;
  line-height: 40px;
}

.top_btn_c3_text:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0;
  display: block;
  background: #5B9BD5;
  z-index: -1;
  transition: .2s;
  border-radius:7px;
}

.top_btn_c3_text:hover {
  color: #FFF;
}

.top_btn_c3_text:hover:before {
  width: 100%;
}

.top_btn_c5 {
    position: relative;
    /* border: 1px solid #000; */
    width: 200px;
    height: 40px;
    line-height: 40px;
    display: flex;
    text-align: center;
    background: #ED7D31;
    font-size: 17px;
    text-decoration: none;
    margin: 0 auto;
    border-radius: 7px;
}

.top_btn_c5_text {
  width: 100%;
  height: 100%;
  color: #FFF;
  z-index: 10;
    line-height: 40px;
}

.top_btn_c5_text:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0;
  display: block;
  background: #F4B68C;
  z-index: -1;
  transition: .2s;
  border-radius:7px;
}

.top_btn_c5_text:hover {
  color: #FFF;
}

.top_btn_c5_text:hover:before {
  width: 100%;
}

.top_btn_c6 {
    position: relative;
    /* border: 1px solid #000; */
    width: 100%;
    height: 40px;
    line-height: 40px;
    display: flex;
    text-align: center;
    background: #548235;
    font-size: 17px;
    text-decoration: none;
    margin: 0 auto;
    border-radius: 7px;
}

.top_btn_c6_text {
  width: 100%;
  height: 100%;
  color: #FFF;
  z-index: 10;
    line-height: 40px;
}

.top_btn_c6_text:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0;
  display: block;
  background: #89C065;
  z-index: -1;
  transition: .2s;
  border-radius:7px;
}

.top_btn_c6_text:hover {
  color: #FFF;
}

.top_btn_c6_text:hover:before {
  width: 100%;
}


.top_link2{
	width:100%;
	text-align:center;
	margin:40px auto;
}

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

.top_link3{
	width:100%;
	text-align:center;
	margin:40px auto 20px;
}

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

.top_bnr {
	width:92%;
	text-align:center;
	margin:40px auto;
}

.top_bnr2 {
	width:92%;
	text-align:center;
	margin:40px auto 30px;
}

.top-menu_bg {
	width:100%;
	text-align:center;
	margin:0px auto;
	background-color:#FFF;
}

.top-menu {
	width:92%;
	text-align:center;
	margin:0px auto;
}

.top_main_bg {
	width:100%;
	margin:0px auto;
	background-image:url(../images/header_bg.jpg);
}

.top_news_bg_n3 {
	width:100%;
	margin:40px auto 0px;
	padding:40px 0 50px;
	text-align:center;
	background-color:#EFF3DA;
}

.top_news_bg_n4 {
	width:92%;
	margin:0px auto;
}

.top_news_bg_n2 {
	width:92%;
	margin:40px auto 50px;
	text-align:center;
}

.top_news_bg_n {
	width:100%;
	margin:0px auto;
/*	background-color:#FFF;
	border-radius: 7px;
	box-shadow: 2px 2px 4px #999 inset;
    box-sizing: border-box;
	padding:20px 15px 10px 15px;*/
}

.top_news_bg_n_bk {
	width:92%;
	margin:0px auto;
}

.top_news_bg_n a {
text-decoration:none;
color:#000;
}


.top_news_n li {
border-bottom:1px dotted #999;
padding-bottom:15px;
margin-bottom:15px;
display: flex;
}

.top_news_n li span {
  padding: 6px;
   background-color: #EA5504;
    /* border: solid #DDD 1px !important; */
    color: #FFF;
    /*font-weight: bold;*/
    box-sizing: border-box;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
	font-size:16px;
}

.top_news_n p {
    text-align: left;
    display: flex;
    align-items: center;
    padding: 0 0 0 15px;
    box-sizing: border-box;
}

.top-blog_bg {
	width:100%;
	text-align:center;
	margin:0px auto;
	background-color:#DEEBF7;
}

.top-blog {
	width:92%;
	text-align:center;
	margin:20px auto;
}

.top-works_bg {
	width:100%;
	text-align:center;
	margin:0px auto;
	background-color:#385723;
}

.top-works_bg_n {
	width:100%;
	text-align:center;
	margin:0px auto;
	background-color:#1F4E79;
}

.top-works {
	width:92%;
	text-align:center;
	margin:20px auto;
}

.top-suggestions_bg {
	width:100%;
	text-align:center;
	margin:0px auto;
	background-image:url(../images/header_bg.jpg);
}

.top-suggestions {
	width:92%;
	text-align:center;
	margin:20px auto;
}





/*-----------------------------------------------------------------
トップ、ページのレイアウト元部分
-----------------------------------------------------------------*/
body {
	font-size: 100%;
	text-align: justify;
	-webkit-text-size-adjust: none; /*文字サイズの自動調整をオフ*/
	line-height:160%;
	background-color:#FFF;
	word-wrap: break-word;
	/*font-family:"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック", sans-serif;*/
    /*font-family:"Noto Serif JP","Yu Mincho",YuMincho,"游明朝","Hiragino Mincho ProN","HG明朝E","メイリオ";*/
	font-size:17px;
}

td {
word-break:break-all
}

.clear_fix{
	overflow: hidden;
	display: inline-block;
}
.clear_fix:after{
	cotent:".";
	display: block;
	visibility: hidden;
	height:0.1px;
	font-size: 0.1em;
	line-height: 0;
	clear:both;
}

h1 {
/*	color:#333;
	padding-left:5px;
	font-weight: normal;
	text-align:left;*/
}

.p_box {
	margin-bottom:30px;
	min-height:350px;
}

/*-----------------------------------------------------------------
jQueryフェードインフェードアウト
-----------------------------------------------------------------*/
#viewer {
	width: 100%;
	overflow: hidden;
	position: relative;
}

#viewer img {
	width: 94%;
	left:3%;
	position: absolute;
}

/*-----------------------------------------------------------------
背景
-----------------------------------------------------------------*/
#content{
	-moz-background-size:100% auto;
	background-size:100% auto; 
	overflow:hidden;
}
#top_bg1{
	background-image:url(../images/sp_header_bg.png);
	padding-bottom:5px;
}
#top_bg2{
	-moz-background-size:100% auto;
	background-size:100% auto; 
	overflow:hidden;
	background-color:#990000;
}

/*-----------------------------------------------------------------
ヘッダー
-----------------------------------------------------------------*/
#header{
	height:70px;
	position:fixed;
	top:0px;
	width:100%;
	z-index:1000;
	background-color:#FFFFFF;
}

#logo {
width:100%;
height:70px;
display: flex;
align-items: center;
}

#logo img{
max-width: calc(100% - 90px);
max-height:70px;
margin:0 0 0 7px;
}

#footer_logo{
	width:100%;
	text-align:center;
	margin:20px auto;
}

#footer_logo img{
	max-width:100%;
	max-height:72px;
	margin-top:2px;
}

#head_menu{
	width:70px;
	height:70px;
	position:fixed;
	right:0px;
	top:0px;
}

#logo2{
	width:69%;
	height:100%;
	text-align:center;
	margin:0 auto 0px;

}

#logo3{
	width:82%;
	height:100%;
	text-align:center;
	margin:0 auto 5px;

}


#headmenu{
	width:96%;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:10px;
    overflow: hidden;
}


#headmenu:after {
    content: "";
    display: block;
    clear: both;
    height: 1px;
    overflow: hidden;
}

* html #headmenu {
    height: 1em;
    overflow: visible;
}


#Btn_home{
	float:left;
	width:25%;
	text-align:center;
}
#Btn_menu{
	float:left;
	width:25%;
	text-align:center;
}
#Btn_tel{
	float:left;
	width:25%;
	text-align:center;
}
#Btn_mail{
	float:left;
	width:25%;
	text-align:center;
}
.headerBtn{
	float:left;
	margin:0;
	padding:0;
	width:25%;
}


#snsmenu{
	width:96%;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:10px;
    overflow: hidden;
}


#snsmenu:after {
    content: "";
    display: block;
    clear: both;
    height: 1px;
    overflow: hidden;
}

* html #snsmenu {
    height: 1em;
    overflow: visible;
}


#sns_facebook{
	float:left;
	width:33%;
	text-align:center;
}
#sns_twitter{
	float:left;
	width:33%;
	text-align:center;
}
#sns_ameblo{
	float:left;
	width:33%;
	text-align:center;
}
.snsBtn{
	float:left;
	margin:0;
	padding:0;
	width:25%;
}


/*-----------------------------------------------------------------
パンくず
-----------------------------------------------------------------*/
#top_text {
	font-size:10px;
	color:#fff;
	padding-right:10px;
	font-weight: normal;
	text-align:right;
	margin-bottom:5px;
}
#top_text a {
	color:#fff;
}

/*-----------------------------------------------------------------
メイン画像
-----------------------------------------------------------------*/
#mainimg{
	width:100%;
    margin-left:auto;
	margin-right:auto;
	clear:both;
	margin-bottom:10px;
	text-align:center;
}

#p_mainimg{
	width:100%;
	margin-left:auto;
	margin-right:auto;
	clear:both;
	margin-bottom:0px;
	text-align:center;
}
/*-----------------------------------------------------------------
スライダー
-----------------------------------------------------------------*/
#slide_img_wrapper{
	padding-bottom:10px;
	margin-top:70px;
	text-align:center;
	position:relative;
}

#sp_logo{
	position:absolute;
	width:100%;
	z-index:100;
}

#sp_logo img{
	max-width:100%;
	max-height:76px
}

#pv_text {
	position:absolute;
	width:100%;
	z-index:100;
}

#pv_text2 {
	position:absolute;
	width:100%;
	z-index:100;
	top:65%;
}

#pv_text2 img{
	width:60%;
}

.bxslider li img{
	width:100%;
	margin:0 auto;
}
#slide_img_wrapper2{
	padding:0px 0 20px;
	text-align:center;
}
#top_bg{
	padding-bottom:20px;
	background-image:url(../images/bg.png);
	
}
.bxslider2 li img{
	width:85%;
	margin:0 auto;
	padding-bottom:10px;
}

/*スライド画像拡大*/

.bxslider li img {
      width: 100%;
      height: auto;
      animation: animationZoom1 15s ease-in-out forwards;
    }
.bk_bxslider li img {
      width: 100%;
      height: auto;
      animation: animationZoom2 10s ease-in-out infinite;
    }
.zoom {
      width: 100%;
     /* overflow: hidden;*/
    }

    @keyframes animationZoom1 {
      100% { transform:scale(1.2)} 
    }
    @keyframes animationZoom2 {
      50% { transform:scale(1.1)} 
    }


/*タイトル共通スタイル*/
.nav_title_bg{
	width:100%;
	background-color:#EA5504;
	position:relative;
}

.nav_title{
	font-size:18px;
	color:#FFF;
	padding:0 0 0 0.8em;
	line-height:54px;
	font-weight:bold;
	border-left:solid #FFCC00 4px;
}

.menu_sns1{
	position:absolute;
	top:8px;
	right:45px;
}

.menu_sns2{
	position:absolute;
	top:8px;
	right:10px;
}

.menu_logo {
	position:absolute;
	top:3px;
	right:5px;
}

.seocnd_title1{
	width:100%;
	background-image:url(../images/sp_second1.png);
	background-repeat:no-repeat;
	background-size: cover;
	min-height:200px;
	margin:65px auto 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.seocnd_title_m1 {
	font-size:26px;
	color:#FFF;
	line-height:100%;
	text-align:center;
}

.seocnd_title_m12 {
	font-size:22px;
	color:#FFF;
	line-height:100%;
	text-align:center;
}

.seocnd_title_line {
height: 1px;
    Width: 100px;
    margin: 10px auto 15px;
    background-color: #FFF;
}

.seocnd_title_m2 {
	font-size:18px ;
	color:#FFF;
}

.seocnd_title_m22 {
	font-size:15px ;
	color:#FFF;
}

.top_title{
	width:94%;
	margin:65px auto 10px;
	text-align:center;
}
.top_title2{
	width:94%;
	margin:25px auto 10px;
	text-align:center;
}
.top_title3{
	width:94%;
	margin:35px auto 10px;
	text-align:center;
}

.title{
	font-size:17px;
	color:#FFF;
	padding:0 0 0 0.8em;
	font-weight:bold;
	background-color:#000;
	line-height:40px;
	border-left:solid #F20013 4px;
}
.sp_title{
	margin:70px auto 0px;
	text-align:center;
}
.p_title{
	font-size:18px;
	color:#FFF;
	padding:10px 0.8em;
	font-weight:bold;
	background-color:#7E9879;
	line-height:120%;
	border-left:solid #FFCC00 4px;
}
.title_under{
	font-size:13px;
	color:#fff;
	padding:8px 0 8px 0.9em;
	font-weight:bold;
	background-color:#C09960;
}

.msl_title{
	font-size:17px;
	color:#fff;
	padding:13px 0 13px 0.8em;
	font-weight:bold;
	background-color:#420000;
}

.msl_title a{
	color:#fff;
	text-decoration:underline;
}

.title a {
	color:#fff;
	text-decoration:underline;
}
 
.title1{
	font-size:16px;
	color:#fff;
	padding:13px 0 13px 0.8em;
	font-weight:bold;
	background-color:#ff6600;
}

.t_title{
	background-color:#ff9900;
	font-size:18px;
	color:#fff;
	padding:15px 0 15px 0.8em;
	font-weight:bold;
}

.title2{
	background-color:#ff9900;
	font-size:12px;
	color:#fff;
	padding:0.2em 0 0.2em 0.8em;
	font-weight:bold;
}

.title3{
	font-size:16px;
	color:#fff;
	padding:10px 0 10px 0.8em;
	font-weight:bold;
	background-color:#5B7EBF;
}

.title4{
	font-size:16px;
	color:#330000;
	padding:10px 0 10px 0.8em;
	font-weight:bold;
	background-color:#FFEFEF;
}

.title5{
	font-size:16px;
	color:#330000;
	padding:10px 0 10px 0.8em;
	font-weight:bold;
	background-color:#F8F3EB;
}

/*-----------------------------------------------------------------
top_banner 1段目
-----------------------------------------------------------------*/
#item02_1{
	width:92%;
	margin:0 auto 15px;
	overflow:hidden;
}
#item02_1 a{
	text-decoration:none;
	font-size:16px;
	color:#333333;
	font-weight:bold;
}
#item02_1 .box{
	width:49%;
}
#item02_1 #item02_box01{
	float:left;
	text-align:center;
	margin:0 1% 0 0;
}
#item02_1 #item02_box02{
	float:right;
	text-align:center;
	margin:0 0 0 1%;
}
/*-----------------------------------------------------------------
top_banner 2段目
-----------------------------------------------------------------*/
#item02_2{
	width:92%;
	margin:0 auto 15px;
	overflow:hidden;
}
#item02_2 a{
	text-decoration:none;
	font-size:16px;
	color:#333333;
	font-weight:bold;
}
#item02_2 .box{
	width:49%;
}
#item02_2 #item02_box01{
	float:left;
	text-align:center;
	margin:0 1% 0 0;
}
#item02_2 #item02_box02{
	float:right;
	text-align:center;
	margin:0 0 0 1%;
}

/*-----------------------------------------------------------------
top_banner 3段目
-----------------------------------------------------------------*/
#item02_3{
	width:92%;
	margin:0 auto 50px;
	overflow:hidden;
}
#item02_3 a{
	text-decoration:none;
	font-size:16px;
	color:#333333;
	font-weight:bold;
}
#item02_3 .box{
	width:49%;
}
#item02_3 #item02_box01{
	float:left;
	text-align:center;
	margin:0 1% 0 0;
}
#item02_3 #item02_box02{
	float:right;
	text-align:center;
	margin:0 0 0 1%;
}

/*-----------------------------------------------------------------
top_banner 4段目
-----------------------------------------------------------------*/
#item02_4{
	width:92%;
	margin:0 auto 50px;
	overflow:hidden;
}
#item02_4 a{
	text-decoration:none;
	font-size:16px;
	color:#333333;
	font-weight:bold;
}
#item02_4 .box{
	width:49%;
}
#item02_4 #item02_box01{
	float:left;
	text-align:center;
	margin:0 1% 0 0;
}
#item02_4 #item02_box02{
	float:right;
	text-align:center;
	margin:0 0 0 1%;
}

/*-----------------------------------------------------------------
top_banner 5段目
-----------------------------------------------------------------*/
#item02_5{
	width:95%;
	margin:20px auto 10px;
	overflow:hidden;
}
#item02_5 .box{
	width:49%;
}
#item02_5 #item02_box01{
	float:left;
	text-align:right;
	margin:0 1% 0 0;
}
#item02_5 #item02_box02{
	float:right;
	text-align:left;
	margin:0 0 0 1%;
}

/*-----------------------------------------------------------------
top_banner 6段目
-----------------------------------------------------------------*/
#item02_6{
	width:95%;
	margin:0 auto 10px;
	overflow:hidden;
}
#item02_6 .box{
	width:49%;
}
#item02_6 #item02_box01{
	float:left;
	text-align:right;
	margin:0 1% 0 0;
}
#item02_6 #item02_box02{
	float:right;
	text-align:left;
	margin:0 0 0 1%;
}

/*-----------------------------------------------------------------
top_banner 7段目
-----------------------------------------------------------------*/
#item02_7{
	width:95%;
	margin:0 auto 10px;
	overflow:hidden;
}
#item02_7 .box{
	width:49%;
}
#item02_7 #item02_box01{
	float:left;
	text-align:right;
	margin:0 1% 0 0;
}
#item02_7 #item02_box02{
	float:right;
	text-align:left;
	margin:0 0 0 1%;
}


/*-----------------------------------------------------------------
共通ナビ
-----------------------------------------------------------------*/
#navi_title{
	background-image:url(../images/menu_bg1.png);
	font-size:17px;
	font-weight:bold;
	color:#fff;
	padding:12px 0 12px 0.8em;
}
#navi_title a{
	color:#fff;
	text-decoration:none;
}
#navi_title a:hover{
	color:#FFCC00;
	text-decoration:none;
}

#navi_menu{
	width:100%;
	background-color:#0097DD;
}

#navi_menu li{
	list-style:none;
	color:#fff;
	font-size:20px;
	padding:20px 0 20px 0.8em;
	font-weight:bold;
	background:url(../images/menu_arrow2.png) no-repeat;
	background-size:15px;
	background-position:4% 50%;
	text-align:center;
}

#navi_menu li a{
	color:#fff;
	font-size:20px;
	text-decoration:none;
	display:block;
}

#navi_menu li a:hover{
	color:#00264D;
	font-size:22px;
	text-decoration:none;
	font-weight:bold;
}

#navi{
	width:100%;
	background-image:url(../images/menu_bg2.png);
}

#navi li{
	list-style:none;
	border-bottom:1px solid #CCC;
	color:#333;
	font-size:17px;
	padding:12px 0 12px 0.8em;
	font-weight:bold;
	background:url(../images/menu_arrow.png) no-repeat;
	background-size:15px;
	background-position:96% 50%;
	line-height:35px;
}

#navi li a{
	color:#333;
	font-size:17px;
	text-decoration:none;
	display:block;
}

#navi li img {
	width:35px;
	height:35px;
	margin-right:10px;
}

.link_none {
	color:#FFFFFF;
	font-size:17px;
	text-decoration:none;
	display:block;
}

.li_link {
	background:url(../images/menu_arrow.png) no-repeat;
	background-size:15px;
	background-position:96% 50%;
}

#navi li a:hover{
	color:#999;
	font-size:17px;
	text-decoration:none;
	font-weight:bold;
}

#navi2{
	width:100%;
	background-image:url(../images/menu_bg1.png);
}
#navi2 li{
	list-style:none;
	border-bottom:1px solid #923636;
	color:#fff;
	font-size:17px;
	padding:12px 0 12px 0.8em;
	font-weight:bold;
	background:url(../images/menu_arrow.png) no-repeat;
	background-size:15px;
	background-position:96% 50%;
}
#navi2 li a{
	color:#fff;
	font-size:17px;
	text-decoration:none;
	display:block;
}
#navi2 li a:hover{
	color:#FFCC00;
	font-size:17px;
	text-decoration:none;
	font-weight:bold;
}

.page_navi ul{
	width:100%;
	font-size: 10px;
	border-top:solid #C66264 3px;
	border-bottom:solid #C66264 3px;
	background-color:#791F1F;	
	margin-bottom: 10px;
	overflow:hidden;
}

.page_navi li{
	float:left;
	line-height: 120%;
	text-align:center;
}

.page_navi.page_navi01_1 li{
    width: 20%;
}
.page_navi.page_navi01_2 li{
    width: 25%;
}
.page_navi li a{
    border-left:solid #C66264 1px;
    padding: 10px 0;
    width:100%;
    display:inline-block;
    color:#FFF;
    font-weight:bold;
    text-decoration:none;
}
.page_navi li a:hover{
    color:#999;
}
.page_navi li a.lh30{
	line-height:30px;
}


/*-----------------------------------------------------------------
Back to top button 
-----------------------------------------------------------------*/
#back-top {
	width:80%;
	position: fixed;
	left:73%;
	bottom: 30px;
}
#back-top a {
	width:40%;
	display: block;
	font: 11px/100% Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	text-decoration: none;
	color: #fff;
	/* background color transition */
	-webkit-transition: 1s;
	-moz-transition: 1s;
	transition: 1s;
}
#back-top a:hover {
	color: #CCC;
}
/* arrow icon (span tag) */
#back-top span {
	width:100%;
	height: 22px;
	padding:15px 0 5px 7px;
	display: block;
	/*margin-bottom: 7px;*/
	background: #28284A center center;
	/* rounded corners */
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	/* background color transition */
	-webkit-transition: 1s;
	-moz-transition: 1s;
	transition: 1s;
}
#back-top a:hover span {
	background-color: #28284A;
}

/*-----------------------------------------------------------------
footer
-----------------------------------------------------------------*/
footer{
	clear:both;
	overflow:hidden;
	color:#FFF;
	background-color:#FFF;
}
p_footer{
	clear:both;
	overflow:hidden;
	color:#fff;
	margin-top:10px;
}
footer p{
	clear:both;
	margin:5px 0;
	font-size:14px;
	text-align:center;
	line-height: 120%;
	margin-bottom:10px;
}
p_footer p{
	clear:both;
	margin:5px 0;
	font-size:16px;
	text-align:center;
	line-height: 120%;
	margin-bottom:10px;
}
.ft_logo{
	width:50%;
	margin:15px auto 0;
}
.tel_btn{
	width:40%;
	margin:10px auto 10px;
}
footer div.copyright{
	width:100%;
	text-align:center;
	font-family: Verdana;
	font-size:12px;
	color:#FFF;
	padding:15px 0;
}
p_footer div.copyright{
	width:100%;
	text-align:center;
	font-family: Verdana;
	font-size:12px;
	color:#FFF;
	padding:3px 0;
}

#top_main {
    position: absolute;
    width: 100%;
	z-index:100;
 /*   top: 40%;*/
}

#top_main2 {
    position: absolute;
    width: 100%;
	z-index:100;
    top: 35%;
	color:#FFFFFF;
	font-size:18px;
	text-align:center;
    background-color: rgba( 0, 0, 0, 0.70 );
	padding:25px 25px;
	line-height:130%;
	box-sizing:border-box;
}

/*-----------------------------------------------------------------
modal button 
-----------------------------------------------------------------*/
#menu-modal {
	width:15%;
	position: fixed;
	right:10px;
	top: 10px;
	z-index:100;
}

#sns {
	width:85px;
	height:23px;
	position:absolute;
	right:3px;
	top: 3px;
	z-index:100;
}

#sns_menu > li {
float: right;
position: relative;
}

#sns_menu > li > a {
margin-left:3px;
}

#sns2 {
	width:105px;
	height:30px;
	margin-left:auto;
	margin-right:auto;
}

#sns_menu2 > li {
float: left;
position: relative;
}

#sns_menu2 > li > a {
margin-left:5px;
}


#top_comment {
    width: 100%;
	font-size:15px;
	color:#FFFFFF;
	font-weight:bold;
	text-align:center;
	line-height:160%;
	text-shadow: 2px 2px 1px #13185E,-2px 2px 1px #13185E,2px -2px 1px #13185E,-2px -2px 1px #13185E;
	background-image:url(../images/top_comment_bg.png);
	background-repeat:repeat-x;
	background-color:#172A88;
	margin-bottom:15px;
	padding:13px 0 13px 0;
}

#footer_ban_bg {
}

#footer_ban {
    margin: 0 auto;
    padding: 10px 0;
    width: 100%;
    overflow: hidden;
    display: table;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 9999;
    line-height: 0;
    text-align: center;
    background-color: rgba( 0, 0, 0, 0.70 );
}
#footer_banner {
width: 100%;
text-align:center;
margin:0 auto;
}
.parent_m {
min-height:83px;
background-color:#FFF;
transform: translateY(-1px);
}

.parent {
min-height:83px;
background-color:#475944;
transform: translateY(-1px);
}

.option_m1 {
	line-height:200%;
	font-size:18px;
	color:#333333;
	  font-weight : bold;

}
.price_box {
    padding: 5px;
    font-size: 14px;
    text-decoration: none;
    display: block;
    text-align: center;
    color: #FFFFFF;
	font-weight:bold;
    background: #009966;
    border-radius: 5px;
    -webkit-border-radius: 5px;/* for Safari and Chrome 対応*/
    -moz-border-radius: 5px;/* for Firefox 対応*/
	width:65px;
	margin-right:5px;
	margin-bottom:5px;
	float:left;	
}

.mailtext {
    width: 98%;
}


.sp_facebook {
  width:40px;
  float:left;
  margin-right:10px;
}

.sp_twitter {
  width:40px;
  float:left;
  margin-right:10px;
}

.sp_ameba {
  width:40px;
  float:left;
  margin-right:10px;
}

.sp_instagram {
  width:40px;
  float:left;
  margin-right:10px;
}

.sp_line {
  width:160px;
  float:left;
}

.sp_sns {
  display:block;
  width:150px;
  margin:0 auto 5px auto;
}

.sp_foot {
  display:block;
}

.pc_only {
  display:none;
}

.sp_only {
  display:block;
}

.pcbr {
  display:none;
}

.spbr {
  display:block;
}

#sp_header {
width:100%;
}

#sp_tel {
  background: url(../images/tel.png) no-repeat left center;
  -webkit-background-size: 41px 41px;
  background-size: 41px 41px;
  width: 41px;
  height: 41px;
  text-indent: -5000px;
  float: right;
  margin: 6px 10px 6px 0;
}

#sp_tel span a {
    width: 41px;
    height: 41px;
    display: block;
    margin: 0px;
}

.parts.icon_link {
    width: 296px;
    margin: 0 auto;
    padding: 0px;
}

.icon_link1 {
    width: 92px;
    height: 92px;
    float: left;
    margin-right: 10px;
    margin-bottom: 10px;
}

.icon_link2 {
    width: 92px;
    height: 92px;
    float: left;
    margin-right: 10px;
    margin-bottom: 10px;
}

.icon_link3 {
    width: 92px;
    height: 92px;
    float: left;
    margin-bottom: 10px;
}

.icon_link4 {
    width: 92px;
    height: 92px;
    float: left;
    margin-right: 10px;
}

.icon_link5 {
    width: 92px;
    height: 92px;
    float: left;
    margin-right: 10px;
}

.icon_link6 {
    width: 92px;
    height: 92px;
    float: left;
    margin: 0px;
}

.parts.icon_link img {
    width: 92px;
    height: 92px;
    margin: 0px;
}

.top_m1 {
	font-size:24px;
	color:#333;
	line-height:120%;
	margin:0px auto;
	text-align:center;
}

.top_m1_1 {
	font-size:24px;
	color:#333;
	line-height:120%;
	margin:0px auto 10px;
	text-align:center;
}

.top_m1 span {
	font-size:14px ;
	line-height:100%;
	color:#ff6600;
}

.top_m1_1 span {
	font-size:14px ;
	line-height:100%;
	color:#ff6600;
}

.top_m2 {
	font-size:20px;
	line-height:120%;
	color:#8F701C;
	text-align:center;
}

.top_m3 {
	font-size:15px;
	color:#000;
	line-height:120%;
	text-align:center;
	margin:5px auto 10px;
}

.top_m4 {
	font-size:22px;
	color:#8F701C;
	line-height:120%;
	margin:40px auto 20px;
	text-align:center;
}

.top_m4 span {
	font-size:16px ;
	color:#000;
	line-height:120%;
}

.top_m5 {
	font-size:18px;
	color:#330000;
	margin:0px auto 15px;
	line-height:120%;
	text-align:center;
}

#top_contents2_bg2 {
width:100%;
margin:50px auto 50px auto;
padding:50px 0;
background-image:url(../images/top_contents2_bg.png);
background-size: cover;
background-position:center;
}

#top_contents2 {
width:100%;
margin:0px auto;
font-size:15px;
color:#FFFFFF;
line-height:180%;
text-align:center;
}

#top_contents2_m1 {
font-size:20px;
font-weight:bold;
line-height:150%;
margin-bottom:20px;
}

#top_contents2_m2 {
font-size:18px;
font-weight:bold;
line-height:150%;
}

#top_contents2_left {
width:600px;
margin-right:150px;
float:left;
}

#top_contents2_right {
width:550px;
font-size:15px;
line-height:180%;
margin-top:100px;
float:left;
}

#top_contents2_right p {
margin:30px 0;
}

#top_contents9_bg2 {
width:100%;
margin:0px auto 50px auto;
padding:50px 0;
background-image:url(../images/top_contents9_bg.png);
background-size: cover;
}

#top_contents9 {
width:100%;
margin:0px auto;
text-align:center;
}

.top_contents9_m {
width:86%;
margin:0px auto;
}

.top_contents9_m1 {
float:left;
width:48%;
}

.top_contents9_m2 {
float:left;
width:48%;
}

.top_contents9_m3 {
float:right;
width:48%;
}

.top_contents9_text_bg {
width:86%;
margin:0px auto;
height:220px;
background-image:url(../images/top_contact_bg_sp.png);
background-size: contain;
background-repeat:no-repeat;
}

.top_contents9_text {
color:#000000;
font-size:15px;
line-height:180%;
padding:90px 0 0 45px;
margin:0 auto;
text-align:left;
}

.box4 {
border-bottom:dotted #999 1px !important;
	padding-bottom:15px;
	margin-bottom:15px;
}

/*アコーディオンメニュー*/

.accordion {
margin: 0 auto;
max-width: 100%;
}

.accordion_toggle {
display: none;
}

.accordion_option {
position: relative;
margin-bottom: 10px;
}

.accordion_title,
.accordion_content {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.3s;
}

.accordion_title {
border: solid 1px #DDD;
padding: 7px 12px 7px 12px;
display: block;
color: #0099CC;
font-weight: bold;
}

.accordion_title::after,
.accordion_title::before {
content: "";
position: absolute;
right: 1.25em;
top: 0.9em;
width: 2px;
height: 0.75em;
background-color: #999;
transition: all 0.3s;
}

.accordion_title::after {
transform: rotate(90deg);
}

.accordion_content {
max-height: 0;
overflow: hidden;
}

.accordion_content p {
margin: 0;
padding: 1em 1em 1em;
font-size: 15px;
line-height:180%;
}

.accordion_toggle:checked + .accordion_title + .accordion_content {
max-height: 500px;
transition: all 1.5s;
}

.accordion_toggle:checked + .accordion_title::before {
transform: rotate(90deg) !important;
}


.p_gallery_photo {
    width: 100%;
	box-sizing:border-box;
	text-align:center;
	margin-bottom:5px;
}

.p_gallery_photo img {
 width: 100%;
 height: 120px;
 object-fit: scale-down;
}

.p_gallery_photo_bg {
    width: 48%;
	max-width:48%;          /* 横幅を固定して */
    display: inline-block; /* インラインブロック化 */
    vertical-align: top;   /* 上端を揃える */
	margin-right:0.5%;
	margin-bottom:15px;
}

.p_pdf_photo {
    width: 100%;
	box-sizing:border-box;
	text-align:center;
	margin-bottom:5px;
}

.p_pdf_photo img {
 width: 100%;
 height: 200px;
 object-fit: scale-down;
}

.p_pdf_photo_bg {
    width: 48%;
	max-width:48%;          /* 横幅を固定して */
    display: inline-block; /* インラインブロック化 */
    vertical-align: top;   /* 上端を揃える */
	margin-right:0.5%;
	margin-bottom:15px;
}

.top_news {
width:100%;
text-align:center;
margin:0px auto 20px;
padding:0;
background-image:url(../img/top_news_bg.png);
background-size: contain;
background-repeat:repeat-y;
background-position:center;
}

.top_news img {
    vertical-align: bottom !important;
}

.top_news_main {
width:100%;
padding:20px 0 0 0;
}

.top_news_box_bg {
width:88%;
margin:0 auto;
}

.top_news_box {
border-bottom:dotted #999 1px !important;
padding-bottom:10px;
margin-bottom:10px;
 display: flex;
text-align:left;
}

.top_news_box span {
  padding:7px 5px;
  max-height:30px;
  font-size:12px;
  background-color:#548235;
  color:#FFFFFF;
  font-weight:bold;
  box-sizing: border-box;
  text-align:center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.top_news_box p {
  font-size:15px;
  text-align:left;
  display: flex;
  align-items: center;
  padding:0 0 0 15px;
  box-sizing: border-box;
  color:#000;
}

.top_news_box a {
  color:#000;
}

.topics_link_bg {
	width:96%;
	height:40px;
	margin:0px auto 20px;
	position:relative;
}
.topics_link {
    background-color: #0D6F99;
    padding: 8px 7px;
    color: #FFFFFF;
    width: 150px;
    text-align: center;
    box-sizing: border-box;
	position:absolute;
	right:0;
}

.topics_link a {
    color: #FFFFFF;
}

/*chores*/

.chores_box_bg {
    width: 100%;
}

.chores_box {
    width: 100%;
    margin:0 auto;
    overflow: hidden;
}

.chores_box ul {
display: flex;
margin:0 auto;

}

.chores_t0 {
  width:30%;
  color:#333;
  padding:5px;
  box-sizing: border-box;
  text-align:left;
  display: flex;
  align-items: center;
}

.chores_t1 {
  width:30%;
  color:#333;
  padding:5px;
  box-sizing: border-box;
  text-align:left;
  display: flex;
  align-items: center;
}

.chores_t2 {
  width:40%;
  color:#333;
  padding:5px;
  box-sizing: border-box;
  text-align:left;
  display: flex;
  align-items: center;
}

.chores_t0 span {
  color:#ffCC00;
}

.chores_t1 span {
  color:#ffCC00;
}

.chores_t2 span {
  color:#ffCC00;
}

.chores_box_foot {
    width: 100%;
    margin:15px auto 0;
    color:#ff0000;
}

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

.chores_box_bg {
}

.chores_box {
    width: 96%;
    margin:0 auto;
    overflow: hidden;
}

.chores_box ul {
display: block;
margin:0 auto;
}

.chores_t0 {
  width:100%;
  padding:10px 0px;
  color:#333;
  display: block;
  border-bottom:dotted #999 1px !important;
}

.chores_t1 {
  width:100%;
  padding:10px 0px;
  color:#333;
  display: block;
  border-bottom:dotted #999 1px !important;
}

.chores_t2 {
  width:100%;
  padding:10px 0px;
  color:#333;
  display: block;
  border-bottom:dotted #999 1px !important;
}

.chores_box_foot {
    width: 96%;
    margin:15px auto 0;
    color:#ff0000;
    overflow: hidden;
}

}

.checkbox li {
	padding-top:10px;
	padding-bottom:10px;
	border-bottom:dotted #999 1px !important;
	color:#330000;
	font-weight:bold;
}

/* 元々のチェックボックス（非表示） */
.checkbox input[type="checkbox"]{
    display: none;
}
/* チェックボックスの代わりを成すラベル */
.checkbox input[type="checkbox"]+label{
    display: none;
    cursor: pointer;
    display: inline-block;
    position: relative;
    padding-left: 32px;
    padding-right: 10px;
}
/* ラベルの左に表示させる正方形のボックス□ */
.checkbox input[type="checkbox"]+label::before{
    content: "";
    position: absolute;
    display: block;
    box-sizing: border-box;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    left: 0;
    top: 50%;
    border: 1px solid;
    border-color:  #CCC; /* 枠の色変更 お好きな色を */
    background-color: #FFF; /* 背景の色変更 お好きな色を */
}
/* チェックが入った時のレ点 */
.checkbox input[type="checkbox"]:checked+label::after{
    content: "";
    position: absolute;
    display: block;
    box-sizing: border-box;
    width: 18px;
    height: 9px;
    margin-top: -9px;
    top: 50%;
    left: 3px;
    transform: rotate(-45deg);
    border-bottom: 3px solid;
    border-left: 3px solid;
    border-color:  #ff0000; /* チェックの色変更 お好きな色を */
}



.p_feature2{
	width:100%;
}
.p_feature2 dt{
	background-color:#599337;
	padding:0.5em;
  box-sizing: border-box;
	color:#FFFFFF;
	font-weight:bold;
	font-size:15px;
	text-align:center;
}
.p_feature2 dd{
	background-color:#D0E4A7;
	padding:0.7em 1.0em 0em 1.0em;
  box-sizing: border-box;
	line-height:150%;
	font-size:15px;
	color:#548235;
	text-align:center;

}


.balloonoya2 {
  position   : relative;             /* 指定した分だけ相対的に移動 */
  cursor   : pointer;                /* カーソルをポインターで表示 */
}

.balloon12 {
  display: none;                     /* 要素を非表示 */
}
.balloon2 {
  position: absolute;                   /* 親要素を基準 */
  display: inline;                      /* 要素をインラインとして表示 */
  background-color:#D0E4A7;       /* 背景色（透明度） */
  width:100%;                          /* 吹き出し全体の幅 */
  left : 0%;                         /* 表示位置 */
  top : 100%;                           /* 表示位置 */
  margin-top : 12px;                    /* 表示位置 */
  font-size: 23px;                       /* 文字サイズ */
  font-weight:bold;
  color:#000;
   line-height : 120%;
   padding:0 0 28px;
   text-align:left;
   z-index:1000;
   background-image:url(../images/close_b.png);
   background-repeat:no-repeat;
   background-size:20px;
   background-position:right 7px bottom 7px;
}
.balloon2:after{
  border-bottom: 12px solid #599337; /* 吹き出し口の高さ・色 */
  border-left: 10px solid transparent;    /* 吹き出し口の幅１／２ */
  border-right: 10px solid transparent;   /* 吹き出し口の幅１／２ */
  top: -12px;                             /* 吹き出し口の位置調整 */
  right : 48%;                             /* 吹き出し口の横位置 */
  content: "";                       /* コンテンツの挿入 */
  position: absolute;                /* 親要素を基準 */
  z-index:20000;
}

.top_news_bg {
  background-color:#F2F8EE;
  padding:30px 0;
  margin:20px 0 40px 0;
}

/*bottan*/

.btn_c {
  position: relative;
  /*  border: 1px solid #000; */
  width: 200px;
  height: 44px;
  line-height: 48px;
  display: flex;
  text-align: center;
  background: #548235;
  font-size: 17px;
  font-family: YakuHanJP, "Helvetica Neue", Roboto, "Droid Sans", "Noto Sans Japanese", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic, Meiryo, sans-serif;
  text-decoration:none;
  font-weight:bold;
  margin:0 auto;
}

.btn_c3 {
  position: relative;
  /*  border: 1px solid #000; */
  width: 200px;
  height: 44px;
  line-height: 48px;
  display: flex;
  text-align: center;
  background: #548235;
  font-size: 17px;
  font-family: YakuHanJP, "Helvetica Neue", Roboto, "Droid Sans", "Noto Sans Japanese", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic, Meiryo, sans-serif;
  text-decoration:none;
  font-weight:bold;
  margin:0 auto;
}

.btn_c2 {
  position: relative;
  /*  border: 1px solid #000; */
  width: 200px;
  height: 44px;
  line-height: 48px;
  display: flex;
  text-align: center;
  background: #548235;
  font-size: 17px;
  font-family: YakuHanJP, "Helvetica Neue", Roboto, "Droid Sans", "Noto Sans Japanese", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic, Meiryo, sans-serif;
  text-decoration:none;
  font-weight:bold;
}

.btn_c_text {
  width: 100%;
  height: 100%;
  color: #FFF;
  z-index: 10;
}

.btn_c_text:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0;
  display: block;
  background: #89C065;
  z-index: -1;
/*  transition: .2s;*/
}

.btn_c_text:hover {
  color: #FFF;
}

.btn_c_text:hover:before {
  width: 100%;
}



.top_info_bg {
  padding:50px 0;
  background-image:url(../images/top_info_bg.png);
  margin:0px auto;
}

.top_info {
width:92%;
margin:0 auto;
}


/*  qa  */


.p_qa_bg_n {
width:1100px;
margin:0 auto 25px;
background-color:#FFF;
border-radius: 15px;
text-align:left;
}

.ac-box {
width:92%;
margin:0 auto;
}

.ac-box label{
font-size: 17px;
min-height:90px;
color:#000;
font-weight: bold;
position: relative;
display: block;
cursor: pointer;
transition: all 0.5s;

display: flex;
align-items: center;

background-image:url(../images/top_q.png);
background-position:top 25px left;
background-repeat:no-repeat;
padding-left:50px;
padding-right:25px;
box-sizing: border-box;

}

.ac-box input{
display: none;
}

.ac-box label:after{
font-size: 17px;
color: #ff6600;
font-family:"Material Icons";
content:" \e5cf";
position: absolute;
top: 30px;
right: 0;
}

.ac-box input:checked ~ label::after {
font-size: 17px;
color: #ff6600;
font-family:"Material Icons";
content:" \e5ce";
position: absolute;
top:30px;
right: 0;
}

.ac-box div{
height: 0px;
padding: 0px;
overflow: hidden;
opacity: 0;
transition: 0.5s;
}

.ac-box input:checked ~ div{
height: auto;
padding: 5px;
opacity: 1;
}

.ac-box div p{
color: #333;
line-height: 23px;
padding: 20px 0px 30px;
text-align: justify;

background-image:url(../images/top_a.png);
background-position:top 20px left;
background-repeat:no-repeat;
padding-left:50px;
box-sizing: border-box;

}

.ac-small {
border-top:solid #CCC 1px !important;
font-size:17px;
}

.ac-small p{
margin-bottom: 0px;
}

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

.p_qa_bg_n {
width:92%;
margin:0 auto 20px;
background-color:#FFF;
border-radius: 15px;
border: 3px solid #5195D3;
box-sizing: border-box;
}

.ac-box label{
font-size:17px;
line-height:120%;
}

}

/*  top_read_more  */


.top_read_more {
width:100%;
margin:0 auto;
}

.read-box {
width:100%;
margin:0 auto;
}

.read-box label{
min-height:60px;
color:#FFF;
position: relative;
display: block;
cursor: pointer;
transition: all 0.5s;
display: flex;
align-items: center;
justify-content: center;
box-sizing: border-box;
}

.read-box label span {
font-size: 11px;
color:#B3B3B3;
}

.read-box input{
display: none;
}

.read-box label:after{
font-size: 17px;
color: #FFF;
font-family:"Material Icons";
content:" \e5cf";
position: absolute;
top: 22px;
right: 10px;
}

.read-box input:checked ~ label::after {
font-size: 17px;
color: #FFF;
font-family:"Material Icons";
content:" \e5ce";
position: absolute;
top: 22px;
right: 10px;
}

.read-box div{
height: 0px;
padding: 0px;
overflow: hidden;
opacity: 0;
transition: 0.5s;
}

.read-box input:checked ~ div{
height: auto;
padding: 15px 0 0;
opacity: 1;
}

.read-box div p{
padding: 0px;
text-align: justify;
box-sizing: border-box;
text-align:left;
}

.read-box div p a{
color: #000;
text-decoration:none;
}

.read-box div p span{
font-size:11px;
}


.read-small {
margin-bottom:20px;
}

.read-small p{
margin-bottom: 0px;
}


.p-works_img_table img {
width:100%;
height:150px;
object-fit: cover;
box-sizing:border-box;
}

.p-works_text01 {
	text-align:center;
	padding:10px 10px 10px;
	background-color:#87BA64;
	color:#FFFFFF;
	font-weight:bold;
}

.p-works_text02 {
	text-align:center;
	padding:10px 10px 10px;
	background-color:#ff6600;
	color:#FFFFFF;
	font-weight:bold;
}

.contact_b1 {
	background-color:#FF9900;
	padding:10px 30px;
	font-size:18px;
	font-weight:bold;
	color:#FFFFFF;
    border-radius: 7px;
	border:none;
}

.contact_b2 {
	background-color:#FF9900;
	padding:10px 30px;
	font-size:18px;
	font-weight:bold;
	color:#FFFFFF;
    border-radius: 7px;
	border:none;
}

.top_business_title1 {
width:92%;
margin: 0 auto 17px;
text-align:center;
height: 46px;
line-height: 46px;
background: #4472C4;
color:#FFF;
font-size: 17px;
font-weight:bold;
position:relative;
}

.top_business_title1::after  {
content: ' ';
position:absolute;
bottom:-12px;
left:0;
right:0;
margin: 0 auto;
width:0;
height: 0;
border:none;
border-top:12px solid #4472C4;
border-right:20px solid transparent;
border-left:20px solid transparent;
}

.top_business_title2 {
width:100%;
margin: 0 auto;
text-align:center;
height: 46px;
line-height: 46px;
background: #39B9FF;
color:#FFF;
font-size: 17px;
font-weight:bold;
}

.top_business_title3 {
width:100%;
margin: 20px auto 0;
text-align:center;
height: 46px;
line-height: 46px;
background: #39B9FF;
color:#FFF;
font-size: 17px;
font-weight:bold;
}

.top_business_box1 {
width:92%;
margin:0 auto 40px;
text-align:left;
background-color:#FFFFFF;
padding:20px;
box-sizing: border-box;
}

.top_business_box1 em {
border-bottom:5px solid #FFFF00;
}
