/*
Theme Name: Sanin Child
Template: sanin
*/

/**********************
共通
**********************/

#main {
    width: 750px;
    display: inline-block;
    float: right;
    vertical-align: top;
}

#side {
    width: 240px;
    display: inline-block;
    float: left;
    vertical-align: top;
}


#contents #main {
    width: 750px;
    display: inline-block;
    float: right;
    vertical-align: top;
}

.inner{
    width: 1000px;
    margin: 0 auto;
}

.contents {
    padding: 50px 0 100px;
}

.content_inner{
    padding:10px;
}

h2 {
    font-size: 28px;
    text-align:center;
    font-weight: bold;
    padding-left:10px;
    margin-bottom:20px;
    border-bottom: 2px solid #049ec4;
}

#entry_body h2 {
    font-size: 24px;
    text-align: left;
    border-left: 5px solid #049ec4;
    margin: 0 0 24px -39px;
    padding: 10px 0 10px 10px;
    border-bottom:none;
}

h3 {
    font-size: 150%;
    color: #049EC4;
    text-align:center;
    font-weight: normal;
    padding-left:10px;
    margin:20px 0;
}

h4 {
	/*     font-size:22px;
    font-weight: normal;
	margin-bottom: 0; */
	font-size: 110%;
	font-weight: normal;
	margin-bottom: 0;
	color: #955490;
	font-weight: bold;
}

h5 {
    font-size: 18px ;
    font-weight: bold;
    margin-bottom:15px;
    border-bottom:1px dashed #CC0066;
    color: #CC0066;
    text-indent: -1em;
    padding-left:1em;
    line-height: 1.4;
}

.bottom {
    margin-bottom: 1em;
}

.right {
    float: right;
}

.center {
    text-align:center !important;
    padding: 0 !important;
}

.comment {
    margin:30px 10px;
}

#sp_tel {
    display: none;
}

#page-top {
    position: fixed;
    bottom: 40px !important;
    right: 20px;
    font-size: 12px;
}

.sp {
    display: none;
}


/**********************
サイドバー
**********************/

.side_content {
    margin-bottom: 20px;
}

.side_content h3 {
    background:#049ec4;
    color: #fff;
    text-align:center;
    font-size: 14px;
    padding: 7px;
    margin: 0;
}

.side_content li {
    border-bottom:1px dashed #cfcfcf;
    margin-bottom:10px;
    padding:5px 10px;
    display: block;
}

.side_content li a {
    font-size: 22px ;
    color: #333;
    line-height: 1.2;
}

.side_content li a span {
    display: block;
    font-size: 14px ;
    color: #333;
}

/**********************
ヘッダー
**********************/

#header {
    text-align: center;
    padding-top: 0px;
    background-color:#fff;
    /*position:fixed;*/
    z-index: 9999;
    top:0;
}

#header .caption {
    background: #001554;
}

#header .caption h1{
    color: #fff;
    font-size: 12px;
    padding: 10px 0;
    margin-bottom:0;
}

#header .header_left {
	width: 30%;
	display: inline-block;
	vertical-align: top;
    padding:20px 0 ;
    height: 65px;
}

/*
#header .header_logo img {
    width: 80%;
}
*/

#header .header_right {
	width: 70%;
	display: inline-block;
    float: right;
	vertical-align: middle;
    padding: 5px 0 10px;
    text-align:right;
}

#header .header_right .header_tel_btn {
     margin-left: 10px;
     display: inline-block;
     vertical-align: middle;
     text-align:left;
     width: 45%;
     font-size:13px;
     line-height: 1.4;
}

#header .header_right .header_contact_btn {
     margin-left: 10px;
     display: inline-block;
     vertical-align: middle;
     width: 50%;
}

#header .header_center {
    display: none;
}

nav#menu {
    margin-bottom: 0px;
    background-color: #049ec4;
    height:55px;
}


nav#menu ul li {
    float: left;
    width: auto;
    text-align: center;
    border: none;
    line-height: 30px;
    width: 12.5%;
}

nav#menu ul li a {
    display: block;
    color: #fff;
    padding: 8px 0;
    font-size: 14px;
}


 nav#menu ul li a:hover {
    color: #049ec4;
    background-color: #fff;

}





/**********************
トップページ
**********************/



/*#main_img {
    padding-top:192px;
}*/

#main_contact {
    position: absolute;
    top: 134%;
    right: 10%;
    z-index: 100;
    width: 22%;
}


#main_img_sp {
    display: none;
}

.about {
    margin-bottom:50px;
    text-align:center;
}

.about_box {
    display: inline-block;
    width: 45%;
    margin:15px;
    vertical-align: top;
}

.about_box .about_txt {
    font-size: 14px;
    text-align:left;
    padding:10px 0;
}

.about_box .about_txt h4 {
    font-size: 16px;
    font-weight: bold;
    text-align:center;
}

.reason_box {
    margin:30px 0;
    padding :10px;
}

.reason_ttl {
    background :#0080FF;
    padding:3px 10px ;
    color:#fff;
    margin-bottom:10px;
}

.reason_ttl span {
    background:#CC0066;
    border-radius: 50%;
    line-height: 2em;
    margin: 0 10px 0 3px;
    padding:0 8px;
}


.voice {
    margin-bottom:50px;
}

.voice_area {
    text-align:center;
}

.voice_box {
    display: inline-block;
    width: 30.8%;
    margin:10px 1%;
    vertical-align: top;
}

.voice_box img {
    height:170px;
    overflow: hidden;
}


.voice_box p {
    padding:10px 0;
}

.voice_box a {
    float: right;
    font-size: 80%;
}

.search {
    margin-bottom:50px;
}

.search_area {
    margin-top:10px;
}

.search_box {
    display: inline-flex;
    width: 24.4%;
}

.search_box2 {
    display: inline-flex;
    width: 49.6%;
}

.contact_bnr {
    margin:100px 0 50px;

}


.shop {
    margin-bottom:50px;
}

.shop p {
    padding: 10px;
}

.info {
    margin-bottom:50px;
    padding:10px;
    border:2px solid #cfcfcf;
    background-image:url(images/association_logo.png);
    background-repeat: no-repeat;
    background-size: 10%;
    background-position: right 2% bottom 0;
}

.info_img {
    display: inline-block;
    width: 35%;
    vertical-align: top;
}

.info_txt {
    display: inline-block;
    width: 62%;
    vertical-align: top;
    padding-left: 10px;
    font-size: 18px;
    line-height: 1.4;
}

.info_txt span {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.8;

}



.news_box {
    margin-bottom: 150px;
}

.news_list {
    border-bottom: 1px dashed #cfcfcf;
    margin-bottom: 15px;
    padding-bottom: 8px;
}

.news_list dt {
    display: inline-block;
    width: 6em;
    padding-left: 15px;
}

.news_list dd {
    display: inline-block;
}

.news_list dd span {
    color: #19327f;
    font-size: 14px;
    padding: 1px 20px;
    border: 1px solid #19327f;
    border-radius: 30px;
    margin-right: 15px;
}

.news_list dd a {
    text-decoration: none;
}



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

.message {
    margin:30px 0 80px;
}

.message p {
    margin-bottom: 1.5em;
}

.profile {
    margin:30px 0;
    clear: both;
}

.profile_img {
    display: inline-block;
    width: 25%;
    margin-right:20px;
    vertical-align: top;
}

.profile_txt {
    display: inline-block;
    width: 70%;
    vertical-align: top;
}



.company_table {
    width: 100%;
    border-collapse: collapse;
    margin:100px 0 0;
}

.company_table tr {
    width: 100%;
    border-top:1px solid #cfcfcf;
    border-right:1px solid #cfcfcf;
}

.company_table th {
    width: 30%;
    border-bottom:1px solid #cfcfcf;
    border-left:1px solid #cfcfcf;
    background:#ffefd5;
    padding:10px;
    font-weight: normal;
}

.company_table td {
    border-bottom:1px solid #cfcfcf;
    border-left:1px solid #cfcfcf;
    padding:10px;
}


/**********************
お客様の声
**********************/

.voice_main_image {
    margin :10px auto 20px;
    text-align:center;
}

.voice_faq {
    margin-bottom: 50px;
}

.voice_faq .voice_icon {
    display: inline-table;
    width: 10%;
    border :1px solid #cfcfcf;
    padding:10px 10px 5px;
    vertical-align: top;
}

.voice_faq .voice_icon p {
    text-align:center;
    font-size: 14px;
    padding: 5px 0 0;
}

.voice_faq .voice_icon_2 {
    display: inline-table;
    width: 10%;
    border :1px solid #cfcfcf;
    padding:10px;
    vertical-align: top;
}

.voice_faq .voice_icon_2 p {
    text-align:center;
    font-size: 14px;
    padding: 0;
}

.voice_faq .voice_txt {
    display: inline-table;
    width: 52%;
    padding:0px 10px;
    vertical-align: top;
    line-height: 1.4;
}

.voice_faq .voice_txt_l {
    display: inline-table;
    width: 83%;
    padding:0px 10px;
    vertical-align: top;
    line-height: 1.4;
}

.voice_faq .voice_txt img {
    margin-left:10px;
}

.voice_faq .voice_txt_l img {
    margin:10px;
}

.voice_faq .voice_pic {
    display: inline-table;
    width: 28%;
    padding:0px 10px;
    vertical-align: top;
}

.voice_faq .voice_pic p{
    font-size: 13px;
}

.voice_faq .box_three {
    display: inline-block;
    width: 30%;
    margin:10px;
    vertical-align: top;
}

.voice_faq .box_three p {
    font-size: 13px;
    text-align:center;
    margin:5px 0;
}


/**********************
施工事例
**********************/

/*タブ切り替え全体のスタイル*/
.tabs {
margin-top: 50px;
padding-bottom: 40px;
background-color: #fff;
width: 100%;
margin: 0 auto;
}

/*タブのスタイル*/
.tab_item {
/*width: calc(100%/2);*/
width: 46%;
margin:10px;
height: 50px;
line-height: 50px;
/*border-bottom: 3px solid #049ec4;*/
background-color: #fff;
border: 2px solid #049ec4;
border-radius:100px;
font-size: 24px;
text-align: center;
color: #049ec4;
display: block;
float: left;
text-align: center;
transition: all 0.2s ease;
}
.tab_item:hover {
opacity: 0.75;
}
/*ラジオボタンを全て消す*/
input[name="tab_item"] {
display: none;
}
/*タブ切り替えの中身のスタイル*/
.tab_content {
display: none;
padding: 0px 0px 40px;
clear: both;
overflow: hidden;
}
/*選択されているタブのコンテンツのみを表示*/
#shimane:checked ~ #shimane_content,
#tottori:checked ~ #tottori_content {
display: block;
}
/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
background-color: #049ec4;
color: #fff;
border: 2px solid #049ec4;
}

.balloon {
  position: relative;
  display: inline-block;
  margin: 20px 0;
  padding: 7px 10px;
  min-width: 100%;
  max-width: 100%;
  font-size: 26px;
  background: #049ec4;
  color: #fff;
  text-align:center;

}

.balloon:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #049ec4;
}

.balloon p {
  margin: 0;
  padding: 0;
}

/*
.example_ttl {
    font-size: 30px;
    text-align: center;
}
*/

.example_area {
    margin:20px 0;
    padding: 10px;
    border:2px solid #c3c3c3;
    background-image: url(images/example_bg.jpg);
}

.example_box {
    display: inline-block;
    width: 28.8%;
    margin:10px 3px;
    padding:10px;
    border :1px solid #c3c3c3;
    vertical-align: top;
    background:#fff;
    box-shadow: 2px 2px 4px gray;
}

.example_box p {
    padding: 7px 0px 20px;
    line-height: 1.4;
    font-size: 14px;
    height: 4em;
}


/**********************
お墓の値段
**********************/

/*タブ切り替え全体のスタイル*/
.type {
margin-top: 50px;
padding-bottom: 40px;
background-color: #fff;
width: 100%;
margin: 0 auto;
}

/*タブのスタイル*/
.type_item {
/*width: calc(100%/4);*/
width: 23%;
margin:10px 5px;
height: 50px;
/*border-bottom: 3px solid #049ec4;*/
background-color: #fff;
border:2px solid #049ec4;
border-radius:100px;
line-height: 50px;
font-size: 24px;
text-align: center;
color: #049ec4;
display: block;
float: left;
text-align: center;
transition: all 0.2s ease;
}
.type_item:hover {
opacity: 0.75;
}
/*ラジオボタンを全て消す*/
input[name="type_item"] {
display: none;
}
/*タブ切り替えの中身のスタイル*/
.type_content {
display: none;
padding: 20px 0px 40px;
clear: both;
overflow: hidden;
}
/*選択されているタブのコンテンツのみを表示*/
#wabo:checked ~ #wabo_content,
#yobo:checked ~ #yobo_content,
#gorin:checked ~ #gorin_content,
#shinto:checked ~ #shinto_content {
display: block;
}
/*選択されているタブのスタイルを変える*/
.type input:checked + .type_item {
background-color: #049ec4;
color: #fff;
border:2px solid #049ec4;
}


.lineup {
    margin:20px 0 50px;
    padding: 10px;
    border:2px solid #c3c3c3;
    background-image: url(images/example_bg.jpg);
}

.lineup img {
    max-height: 166px;
}

.lineup .four_box {
    background-image: url(images/lineup_bg3.jpg);
    border:0;
    background-size: cover;
}

.four_box {
    display: inline-block;
    width: 22.7%;
    margin:3px 0;
    vertical-align: top;
    padding: 5px;
    text-align:center;
    border :1px solid #c3c3c3;
    background:#fff;
    box-shadow: 2px 2px 4px gray;
}

.four_box p {
    font-size: 13px;
    padding:5px 0 0 0;
    line-height: 1.2;
    text-align:left;
}

.four_box .link_btn {
    display: block;
}

.four_box a span {
    font-size: 13px;
    padding:5px 0 0 0;
    line-height: 1.2;
    text-align:left;
    color: #000;
    display: block;
    margin:5px 0 10px;
}

.four_box a span.lineup_ttl {
    font-size: 15px;
    line-height: 1.2;
    height: 2em;
    text-align:center;
    color: #000;
    display: block;
    margin:5px 0;
    padding:0;
    font-weight: bold;
}

.price p {
    font-size: 28px;
}

.price p span {
    color: #ff4500;
}













/**********************
商品詳細ページ
**********************/

h2.detail_ttl {
    background-image:url(images/detail_ttl.jpg);
    font-family: serif;
    line-height: 69px;
    color: #000000;
    font-size: 28px;
    font-weight: bold;
    letter-spacing: 6px;
    border-bottom:0;
    text-shadow: 
       2px  2px 0px #ffffff,
      -2px  2px 0px #ffffff,
       2px -2px 0px #ffffff,
      -2px -2px 0px #ffffff,
       2px  0px 0px #ffffff,
       0px  2px 0px #ffffff,
      -2px  0px 0px #ffffff,
       0px -2px 0px #ffffff;
}

.detail_pic_box {
    display: inline-block;
    width: 40%;
    vertical-align: top;
}

.detail_pic_box img {
    object-fit: contain;
    width: 100%;
    height: 100%
}

.detail_pic_box .detail_pic_main {
    display: block;
    border :1px solid #cfcfcf;
    margin :5px;
    text-align:center;
    height: 262px;
}

.detail_pic_box .detail_pic_sub {
    display: inline-block;
    width: 44.9%;
    border :1px solid #cfcfcf;
    margin :5px;
    text-align:center;
    height: 131px;
}

.fancybox-title-over {
    text-align: center !important;
}

.detail_text_box {
    display: inline-block;
    width: 57.8%;
    vertical-align: top;
    padding:5px;
}


.detail_table {
    width: 100%;
    border-collapse: collapse;
}

.detail_table tr {
    width: 100%;
    border-top:1px solid #cfcfcf;
    border-right:1px solid #cfcfcf;
}

.detail_table th {
    width: 30%;
    border-bottom:1px solid #cfcfcf;
    border-left:1px solid #cfcfcf;
    background:#ffefd5;
    padding:10px;
    font-weight: normal;
}

.detail_table td {
    border-bottom:1px solid #cfcfcf;
    border-left:1px solid #cfcfcf;
    padding:10px;
}

.detail_text_area {
    margin:20px 0;
    padding:5px;
}

.detail_text_area p {
    margin-bottom: 20px;
}

.price {
    margin:30px 0 ;
}

/**********************
アフターサービス
**********************/

.service_list {
    margin:30px 0;
}

.service_list ul li {
    display: inline-block;
    text-align:center;
    margin:0 15px 10px 0;
    width: 30.7%;
}

.service_list ul li a {
    display: block;
    color: #fff;
    padding:10px 20px;
    background:#00a73c;
    border:1px solid #00a73c;
}

.service_list ul li a:hover {
    color: #00a73c;
    background:#fff;
}

.service_box {
    margin:30px 0 50px;
}

.service_box .box_three {
    display: inline-block;
    width: 30%;
    margin: 10px;
    vertical-align: top;
}


.service_box .box_four {
    display: inline-block;
    width: 21.7%;
    margin: 10px;
    vertical-align: top;
}

.service_box .box_three p ,.service_box .box_four p{
    font-size: 13px;
    text-align: center;
    margin: 5px 0;
}




/**********************
墓石工事の流れ
**********************/

.flow_box {
    display: inline-block;
    width: 26.4%;
    padding:5px;
    border: 2px solid #c3c3c3;
    /*vertical-align: top;*/
    vertical-align: middle;
}

.flow_box .flow_pic {
}

.flow_box .flow_pic img ,.complete_flow_box .flow_pic img{
    box-shadow: 2px 2px 4px grey;
}


.flow_box .flow_text {
    text-align:center;
    margin-top: 10px;
}

.flow_arrow_box {
    display: inline-block;
    width: 6%;
}

.flow_arrow_bottom_right {
    text-align:right;
    margin:5px 90px;
}

.flow_arrow_bottom_left {
    margin:5px 75px;
}

.flow_arrow_bottom_right img ,.flow_arrow_bottom_left img {
    width: 8%;
}

.flow_arrow_last {
    width: 20%;
    margin:20px auto;
}

.complete_area {
    border: 2px solid #c3c3c3;
    padding:10px;
    background-image: url(images/example_bg.jpg);
}

.complete_area p {
    text-align:center;
    font-size:24px;
}

.complete_flow_box {
    display: inline-block;
    width: 46.7%;
    margin:10px;
    vertical-align: top;
}








/**********************
シングルページ
**********************/


.meta_box {
    background :none;
    }

#entry_body .meta_box p {
    text-align: right;
}

#relations {
    margin: 150px 0 50px 0;
}


/**********************
お問い合わせ
**********************/

.table_info{
    border-collapse: collapse;
    width: 100%;
}

.table_info tr {
    width: 100%;
}

.table_info tr th {
    width: 40%;
    background:#ccc;
    font-size: 14px;
    font-weight: normal;
    padding:10px;
}

.table_info tr th span {
    color: #ff0000;
    font-size:12px;
}

.table_info tr td {
    font-size: 14px;
    padding:10px;
}


input[type=text] {
    font-size: 14px;
    padding:10px 5px;
    width: 75%;
}

textarea {
    padding:10px 5px;
    font-weight: normal;
    width: 97%;
}

input[type="submit"] {
    font-size: 20px !important;
    margin:30px auto;
}

.top {
    margin-top:10px;
}


/**********************
寄贈
**********************/

.donation_pic_box {
    display: inline-block;
    width: 47.6%;
    margin:1%;
}

.donation_text_area {
    margin:30px 0;
    padding:15px;
}

.donation_text_area p {
    margin-bottom:30px;
}


/**********************
職場訪問学習
**********************/


.visit_text_area {
    margin:30px 0;
    padding:15px;
}

.visit_text_area p {
    margin-bottom:30px;
}

.visit_pic_area {
    margin-bottom: 30px;
}

.visit_pic_area .visit_pic {
    display: inline-block;
    width: 40%;
    vertical-align: middle;
}

.visit_pic_area .visit_text {
    display: inline-block;
    padding-left:20px;
    width: 56%;
    vertical-align: middle;
}

.visit_pic_area .visit_text p ,.visit_pic_area .visit_text_left p {
    margin-bottom: 0;
}

.visit_pic_area .visit_pic_right {
    display: inline-block;
    width: 40%;
    vertical-align: middle;
}

.visit_pic_area .visit_text_left {
    display: inline-block;
    padding-right:20px;
    width: 56%;
    vertical-align: middle;
}


.visit_pic_box {
    display: inline-block;
    width: 47.6%;
    margin:1%;
}


/**********************
お知らせ一覧
**********************/

.home_area {
    margin-bottom: 20px;
    padding:10px;
    border-bottom: 1px dashed #ccc;
}

.date span {
    color: #19327f;
    font-size: 14px;
    padding: 1px 20px;
    border: 1px solid #19327f;
    border-radius: 30px;
    margin-left: 15px;
}


.more {
    text-align:right;
}

.list_area {
    margin-bottom: 50px;
}





.main_info {
    font-size:30px;
    color:#fff;
    background-color:#FF9300;
    text-align: center;
    padding:20px 0;
    letter-spacing: 5px;
}

.main_info a {
    color:#fff;
}

.main_info a span{
    font-size:150%;
    color:#ff0000;
}

.sakura {
    background-image: url(images/sakura.jpg);
    background-size: contain;
    background-repeat: no-repeat;
}





.concept h3 {
    font-size: 48px;
    text-align: center;
    font-weight: normal;
}

.concept p {
    text-align: center;
    font-weight: normal;
    font-size: 24px;
}

.concept p span {
    font-size: 150%;
    color:#ff0000;
}

.info_box {
    display: inline-block;
    width: 43.5%;
    margin: 10px;
    border: 2px solid #6ec332;
    padding: 20px;
    vertical-align: top;
}

.info_box h3 {
    font-size: 26px;
    text-align: center;
    font-weight: normal;
    border-bottom: 1px solid #000;
    padding-bottom: 20px;
}

.info_box .news_area {
    width: 100%;
    border-bottom: 1px dashed #666;
    margin-bottom:10px;
    padding-bottom: 10px;
}

.info_box .news_area .text_area {
    display: block;
    width: 100%;
    vertical-align: top;
}

.info_box .news_area .text_area .title {
    font-size: 16px;
}

/*
.info_box .news_area .thumb_area {
    display: inline-block;
    width: 22%;
    vertical-align: top;
}


.info_box .news_area .text_area {
    display: inline-block;
    width: 75%;
    vertical-align: top;
}

.info_box .news_area .text_area .title {
    font-size: 20px;
}

*/

.info_box .news_area .text_area .date {
    font-size: 12px;
}

.info_box .news_area .text_area .title a {
    color:#000;
}

.info_box .news_area .text_area .text {
    font-size: 14px;
    line-height:1.5em;
}

.info_box .news_area .text_area .more{
    font-size: 12px;
    text-align: right;
}

/*
.link_btn {
    font-size: 18px;
    background: #6ec332;
    padding: 10px;
    border-radius: 5px;
    text-align: center;
    width: 40%;
    display: block;
    text-decoration: none;
    margin: 30px auto 0;
}

.link_btn a {
    color:#fff;
}
*/
.series_btnimg_box {
    text-align: center;
}

.series_btnimg_box .series_btnimg {
    display: inline-block;
    width: 47%;
    margin:10px;
}


.series_btnimg_box .series_btnimg_l {
    display: block;
    width: auto;
    margin: 10px;
}



/*
.about {
    background: #F8ECE0;
}

.about .about_img {
    display: inline-block;
    width: 35%;
    vertical-align: top;
}
.about .about_text {
    display: inline-block;
    width: 64%;
    vertical-align: top;
}

.about .about_text img{
    max-width: 100%;
}
*/

.reserve_img {
    width: 70%;
    margin:0 auto;
}

.reserve_info {
    text-align: center!important;
    font-size: 18px;
    margin-bottom:20px!important;
}

.reserve_img {
    width: 70%;
    margin:0 auto;
}

.mission p {
    margin-top: 30px;
    font-size:20px;
    line-height:1.8em;
}

.mission p span {
    font-size:28px;
    color:#e68f9f;
}

.mission p.text_center {
    font-size:20px;
    text-align:center;
    margin-top: 20px;
}

.left_box {
    display: inline-block;
    width: 49%;
    text-align: right;
 }

.right_box {
    display: inline-block;
    width: 49%;
 }

.mission .left_box img,.mission .right_box img{
    max-width: 50% !important;
 }





.choose h3 {
    font-size: 38px;
    font-weight: normal;
    text-align: center;
}

.choose h3 span{
    font-size: 58px;
    color:#ff99ab;
    font-weight: bold;
}

.choose .box {
    width: 100%;
    margin-bottom:50px;
}

.choose .left_box {
    display: inline-block;
    width: 49%;
    margin:0 10px 50px 0;
    float:left;
    vertical-align: top;
    clear: both;
}

.choose .right_box {
    display: inline-block;
    width: 49%;
    margin:0 0 50px 10px;
    float:left;
    vertical-align: top;
}

.choose .box h4,.choose .left_box h4,.choose .right_box h4{
    font-size: 22px;
    margin:10px 0;
    text-align:left;
}

.choose .left_box p {
    text-align:left;
}

.choose .box h4 span ,.choose .box p span ,.choose .left_box h4 span ,.choose .left_box p span ,.choose .right_box h4 span ,.choose .right_box p span {
    font-size: 150%;
    color:#ff0000;
}

.choose .choose_box {
    width:100%;
    text-align:center;
}

.choose .choose_box h3{
    line-height: 1.2;
    font-size: 24px;
    color: #ffffff;
    padding-top: 35px;
    margin-bottom:0;
}

.choose .choose_box h3 span{
    font-size: 18px;
    color:#ffffff;
}

.choose .choose_box p{
    color: #ffffff;
    padding: 10px 20px 0;
    text-align: left;
}

.choose .choose_box p.text_center{
    text-align: center ;
    padding:0 20px;
}

.choose .choose_box .choose_box_logo {
    display: inline-block;
    width:320px;
    height: 320px;
    vertical-align: top;
}

.choose .choose_box .choose_box_1 {
    display: inline-block;
    width:320px;
    height: 320px;
    vertical-align: top;
    background-image: url(images/choose_bg1.png);
}

.choose .choose_box .choose_box_2 {
    display: inline-block;
    width:320px;
    height: 320px;
    vertical-align: top;
    background-image: url(images/choose_bg2.png);
}

.choose .choose_box .choose_box_3 {
    display: inline-block;
    width:320px;
    height: 320px;
    vertical-align: top;
    background-image: url(images/choose_bg3.png);
}

.choose .choose_box .choose_box_4 {
    display: inline-block;
    width:320px;
    height: 320px;
    vertical-align: top;
    background-image: url(images/choose_bg4.png);
}

.choose .choose_box .choose_box_5 {
    display: inline-block;
    width:320px;
    height: 320px;
    vertical-align: top;
    background-image: url(images/choose_bg5.png);
}

.choose .choose_box .choose_box_6 {
    display: inline-block;
    width:320px;
    height: 320px;
    vertical-align: top;
    background-image: url(images/choose_bg6.png);
}


.pic {
    /*background-image: url(images/pic_bg.png);
    background-size: contain;
    background-repeat: no-repeat;*/
}



/*.voice_ttl {
    font-size: 36px;
    margin-bottom: 20px;
    text-align: center;
}

.voice p {
    font-size: 20px;
    margin-bottom: 20px;
    text-align:center;
}

.voice .voice_box {
    margin: 40px 0 ;
    border-bottom: 1px solid #ccc;
    padding-bottom: 30px;
}

.voice .voice_box .image_box {
    display: inline-block;
    width: 30%;
    vertical-align: top;
}

.voice .voice_box .text_box {
    display: inline-block;
    width: 65%;
    padding-left: 15px;
    vertical-align: top;
}

.voice .voice_box .text_box .voice_profile {
    color: #fff;
    background: #ff99ab;
    display: inline-block;
    width: 70px;
    height: 50px;
    border-radius: 150px;
    padding: 30px 20px;
    font-size: 14px;
    text-align: center;
}


.voice .voice_box .text_box h5 {
    font-size: 18px;
    display: inline-block;
    width: 80%;
    padding-left: 10px;
}

.voice .voice_box .text_box p {
    font-size: 100%;
    text-align:left;
    background-image: linear-gradient( to top, rgba(152,196,255,.3) .1em, transparent .1em );
    background-size: auto 2rem; 
    line-height: 2rem;
    margin-bottom: 0;
}

.voice .voice_box .text_box .charge {
    position: relative;
    margin: 50px 0;
    padding: 10px;
    border: solid 3px #95ccff;
}

.voice .voice_box .text_box .charge .charge_title {
    position: absolute;
    display: inline-block;
    top: -30px;
    left: -3px;
    padding: 2px 9px;
    height: 25px;
    line-height: 25px;
    font-size: 16px;
    background: #95ccff;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}

.voice .voice_box .text_box .charge p {
    margin: 0; 
    padding: 0;
    background-image: none;
}
*/


.series_btn {
    font-size: 18px;
    background: #6ec332;
    padding: 10px;
    border-radius: 5px;
    text-align: center;
    width: 80%;
    display: block;
    text-decoration: none;
    margin: 30px auto 10px;
}

.series_btn a {
    color:#fff;
}

.series {
    text-align: center;
}

.series_box{
    display: inline-block;
    border:2px solid #6ec332;
    width: 30.6%;
    margin:40px 0;
    vertical-align: top;
    padding:5px;
}

.series_box h3 {
    font-size: 20px;
    text-align: center;
    font-weight: normal;
    background-color: #6ec332;
    color:#fff;
    padding: 20px 0;
    margin-bottom:24px;
}

.series_box img {
    max-width: 100%;
    margin-bottom:20px;
}

.series_box th {
    border:none;
    width: 22%;
    text-align: left;
}

.series_box td {
    border:none;
    width: 100%;
    text-align: left;
    padding-left: 10px;
}

.access_box {
    display: inline-block;
    width: 43.5%;
    margin: 10px;
    border: 2px solid #6ec332;
    padding: 20px;
    vertical-align: top;
    height: 450px;
}

.access_box h3 {
    font-size: 20px;
    text-align: center;
    font-weight: normal;
    background-color: #6ec332;
    color:#fff;
    padding: 20px 0;
    margin-bottom:24px;
}


.temple_feature {
    text-align: center;
    font-size:24px;
    margin:20px 0;
}


.media_box {
    text-align: center;
}


.media_ttl {
    font-size:36px;
    margin-bottom:20px;
}

.media_box p{
    font-size:20px;
    margin-bottom:20px;
}


.media {
    display: inline-block;
    width: 20%;
    vertical-align: middle !important;
    margin: 20px 10px;
}


#contents #main {
    border: none;
}


#contents #main .home_area .thumb_box {
    width:20%;
}

#contents #main .home_area .thumb_box img{
    max-width:100%;
}

div.breadcrumbs {
  max-width: 1040px;
  margin:20px auto;
  padding-top: 156px;
}

div.breadcrumbs a {
  color:#000;
}


#contents #main .home_area{
    width: 100%;
    margin-bottom:10px;
    padding-bottom: 10px;
}

#contents #main .home_area .thumb_area {
    display: inline-block;
    width: 22%;
    vertical-align: top;
}

#contents #main .home_area .thumb_area img{
    margin-bottom:0px !important;
}

#contents #main .home_area .text_area {
    display: block;
    width: 100%;
    vertical-align: top;
}
/*
#contents #main .home_area .text_area {
    display: inline-block;
    width: 75%;
    vertical-align: top;
}
*/
#contents #main .home_area .text_area .date {
    font-size: 12px;
    margin-bottom: 5px;
}

#contents #main .home_area .text_area .title {
    font-size: 20px;
    margin-bottom: 5px;
}

#contents #main .home_area .text_area .title a {
    color:#000;
    text-decoration:none;
}

#contents #main .home_area .text_area .text {
    font-size: 14px;
    line-height:1.5em;
    margin-bottom: 5px;
}

#contents #main .home_area .text_area .more{
    font-size: 12px;
    text-align: right;
    margin-bottom: 5px;
}

.point {
    margin:60px 0;
}

.point .image_box{
    display: inline-block;
    width: 40%;
    vertical-align: top;
    margin-right: 10px;
}

.point .image_box img {
    max-width:100%;
}

.point .text_box{
    display: inline-block;
    width: 58%;
    vertical-align: top;
}

.point .text_box h4{
    font-size: 32px;
    margin-bottom:10px;
    line-height:1.3em;
}

.point .text_box h4 span{
    color:#FF9300;
}

.point .text_box p{
    font-size: 20px;
    margin-bottom:10px;
    line-height:1.3em;
}



.recommend h3 {
    text-align: center;
    color: #6ec332;
    font-weight: bold;
    font-size: 28px;
    margin: 0 10px 10px;
    line-height: 1.2em;
}

.recommend .inbox {
    display: inline-block;
    width: 22%;
    vertical-align: top;
    margin:1%;
}

.recommend .inbox .inbox_ttl {
    font-size: 16px;
    background: #FFF799;
    color: #603813;
    padding: 10px 30px;
    border-radius: 5px;
    text-align:center!important;
}

.flow {
    width: 99%;
    margin-bottom:30px;
    border:2px solid #036eb8;
}

.flow .step {
    background: #036eb8;
    color: #fff;
    padding: 10px;
    font-size: 30px;
    margin-bottom:0;
}

.flow .step span {
    margin-right:10px;
}

.flow .flow_text {
    padding: 10px;
    font-size: 24px;
    margin-bottom:0;
}

.flow .flow_text .chui{
    padding: 10px;
    font-size: 16px;
    margin-bottom:0;
}

.triangle{
    margin:0 auto 30px ;
    width: 15%;
}

.triangle img{
    max-width: 100%;
}

.faq {
    margin-bottom:60px;
}

.faq .question{
    background-image:url(images/question.jpg);
    background-repeat:no-repeat;
    background-size:30px;
    font-size: 22px;
    padding-left: 38px;
    margin-bottom:10px!important;
}

.faq .answer{
    background-image:url(images/answer.jpg);
    background-repeat:no-repeat;
    background-size:30px;
    font-size: 18px;
    padding-left: 38px;
    margin-bottom:10px!important;
}

/*
.price p {
    font-size: 24px;
}

.price p span{
    font-weight: bold;
}



table.price_sp  {
    display: none;
}

table.price {
    border-collapse: collapse;
    text-align: left;
    line-height: 1.5;
    border-left: 1px solid #ccc;
    width: 100%;
}


table.price thead th {
    padding: 10px;
    font-weight: bold;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    background: #dcdcd1;
    text-align: center;
}

table.price tbody th {
    width: 20%;
    padding: 10px;
    font-weight: bold;
    vertical-align: top;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    background: #ececec;
    text-align: center;
}

table.price td {
    width: 20%;
    padding: 10px;
    vertical-align: top;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    text-align: center;
}


*/


.border_box {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #000000;
    border-radius: 8px;
}
.border_box .box_title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 22px;
    background: #FFF;
    color: #000000;
    font-weight: bold;
}
.border_box p {
    margin: 0; 
    padding: 0;
}






/***** コンタクトフォーム *****/
.contactform {
 width: 100%;
}

.contactform tr{
 width: 100%;
 padding:20px 10px;
}

.contactform th{
 width: 40%;
 border: none;
 padding:20px 0 20px 150px;
}

.contactform td{
 width: 60%;
 border: none;
 padding:20px;
}

.required-contactform7{
  padding: 5px;
  background: #DE8686;
  color: #fff;
  border-radius: 3px;
  margin-right: 3px;
  float: right;
}
 
.contactform input,
.contactform textarea{
  max-width: 90% !important;
  margin: 5px 10px 10px 5px;
  padding:10px;
  border: 1px solid #ccc;
border-radius: 5px;
}
 
.message-100 textarea{
  width: 100%;
  margin: 5px 10px 10px 5px;
  border: 1px solid #ccc;
  border-radius: 5px;
}

span.wpcf7-list-item {
    display: inline-block;
    margin: 0 0 0 1em;
    width: 47%;
}

.text-xs-center {
    text-align: center!important;
}

input[type="submit"], input[type="reset"], input[type="button"] {
    padding: 10px;
    background: #cf6a88;
    border: 0;
    width: 30%;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    line-height: 2em;
    height: auto;
    font-size: 30px;
    color: #fff;
}

#sp {
    display: none;
}

.sp_ttl {
    display: none;
}



.company {
    width: 100%;
}

.company tr {
    width: 100%;
}

.company th {
    width: 30%;
    background:#eee;
    padding:40px 0 40px 40px;
    font-weight: normal;
    border:none;
}

.company td {
    padding-left: 40px ;
    border:none;
}

/*
.message  {
    margin-bottom:30px;
}
*/

.message .img_box {
    display: inline-block;
    width: 20%;
    vertical-align: top;
}

.message .message_box {
    display: inline-block;
    width: 75%;
    padding-left: 20px;
    vertical-align: top;
}

.message .message_box h4 {
    font-size: 28px;
    margin-bottom: 10px;
    line-height: 1.3em;
}

.message .message_box p {
    font-size: 20px;
    line-height: 1.5;
}

/*.lineup {
    margin-bottom:150px;
}

.lineup .lineup_ttl_a{
   font-size:30px;
   background:#7401DF;
   color:#fff;
   padding: 10px 20px;
font-weight: normal;
}

.lineup .lineup_ttl_b{
   font-size:30px;
   background:#FFBF00;
   color:#fff;
   padding: 10px 20px;
font-weight: normal;
}

.lineup .lineup_ttl_c{
   font-size:30px;
   background:#FE2E64;
   color:#fff;
   padding: 10px 20px;
font-weight: normal;
}

.lineup .lineup_ttl_z{
   font-size:30px;
   background:#088A29;
   color:#fff;
   padding: 10px 20px;
font-weight: normal;
}

.lineup .lineup_pic {
    display: inline-block;
    width: 40%;
    vertical-align: top;
}

.lineup .lineup_pic img{
    width: 100%;
}

.lineup .lineup_text {
    display: inline-block;
    width: 57%;
    vertical-align: top;
    padding: 5px 0 0 20px;
}

.lineup .lineup_text .feature_a span{
    font-size:20px;
    padding:10px 30px;
    background:#D358F7;
    color:#fff;
}

.lineup .lineup_text .feature_b span{
    font-size:20px;
    padding:10px 30px;
    background:#F5D0A9;
    color:#fff;
}

.lineup .lineup_text .feature_c span{
    font-size:20px;
    padding:10px 30px;
    background:#F7819F;
    color:#fff;
}

.lineup .lineup_text .feature_z span{
    font-size:20px;
    padding:10px 30px;
    background:#74DF00;
    color:#fff;
}

.lineup .lineup_text {
    font-size:18px;
}

.lineup .overview {
    font-size:18px;
    margin:20px 0;
}

.lineup .lineup_text .stone {
    border:3px solid #ff4500;
    padding:10px;
    border-radius:8px;
    margin-bottom: 10px;
}

.lineup .lineup_text .stone p {
    margin-bottom:0 !important;
}

.lineup .lineup_text .stone p span{
    font-size:22px;
    font-weight:bold;
}

*/


.option_box {
    margin:40px 0;
}

.option_ttl {
    font-size:28px;
    text-align: center;
}

.option {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.option .thead {
    background:#5ab4bd;
    text-align: center ;
    color:#fff;
    font-weight:bold;
}

.option th {
    width: 70%;
    text-align: left;
    font-weight:normal;
}

.option td {
    text-align: right;
}

.option th,.option td{
  padding: 15px;
}

.option tr:nth-child(odd){
  background-color: #eee;
}

.more_detail {
    font-size:18px;
    padding: 10px 15px;
    color:#fff;
    background:#5ab4bd;
    border:1px solid #5ab4bd;
    text-align: center;
    float:right;
    display: block;
    margin-top: 30px;
}

.more_detail:hover {
    color:#5ab4bd;
    background:#fff;
    border:1px solid #5ab4bd;
}


.note p{
    font-size:30px;
    text-align: center !important;
    color:#ff0000;
    font-weight: bold;
}

.pre_bg {
    background-image: url(images/pre_bg.png);
    background-repeat: repeat;
    background-size:contain;
}

.matsue_pre_concept {
    background-image: url(images/matsue_pre_concept_bg.jpg);
    background-repeat: no-repeat;
    background-size:cover;
    text-align: center;
}

.pre_hoyo_text {
    margin-top: 20px;
    color: #fff;
}

.pre_choose_text {
    margin-top: 20px;
    text-align: center!important;
}


.space_text {
    margin-top: 20px;
    color: #fff;
    text-align: left;
}

.consultation_text {
    text-align: left;
}

.image_lineup {
    text-align:center;
}

.image_lineup .lineup_box {
    display: inline-block;
    width: 24%;
    vertical-align: top;
    margin:20px 0;
}

.image_lineup .lineup_box_pre {
    display: inline-block;
    width: 30%;
    vertical-align: top;
    margin:20px 10px;
}

.feature_pre_2box {
    display: inline-block;
    width: 46%;
    margin:20px 10px;
    vertical-align: top;
}

.feature_pre_3box {
    display: inline-block;
    width: 30%;
    margin:20px 10px;
    vertical-align: top;
}

.feature_pre_2box h3 ,.feature_pre_3box h3{
    margin-bottom:10px;
}

.feature_pre_2box p{
    font-size:18px;
    padding:0 20px 0 40px;
}

.feature_pre_3box p{
    font-size:16px;
    padding:0 20px 0 40px;
}

.hoyo {
    text-align:center;
}

.hoyo_ttl {
    font-size: 36px;
    margin-bottom: 20px;
    text-align: center;
}

.hoyo_2box {
    display: inline-block;
    width: 45%;
    vertical-align:top;
    margin:0 15px 30px;
}

.hoyo_3box {
    display: inline-block;
    width: 32%;
    vertical-align:top;
}

.hoyo_text {
    font-size: 20px;
    margin-top:20px;
}


.consultation {
    text-align:center;
}

.consultation_ttl {
    font-size: 36px;
    margin-bottom: 20px;
    text-align: center;
}

.consultation_box {
    display: inline-block;
    width: 45%;
    vertical-align:top;
    margin:15px;
}

.point .pre_text_box p {
    margin-bottom: 10px;
}


.point .pre_text_box{
     display: inline-block;
      width: 58%;
  }
 .point .pre_text_box h4{
      font-size: 32px;
      margin-bottom:10px;
      color: #172a88;
      font-family: serif;
 }


.video {
    margin: 20px auto 40px;
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}

.video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.series_footer {
    margin:30px 0;
    text-align: center;
}

.series_footer .series_footer_box {
    display: inline-block;
    width: 32%;
    margin: 0 5px;
}

.covid {
    border:1px solid #ccc;
    padding:20px;
    width: 87%;
    margin: 0 auto;
}

.covid .ttl{
    text-align: center;
    color: #ff0000;
    font-weight:bold;
    font-size: 22px;
    margin-bottom: 20px;
}


.detail_pic_stone{
    display: block;
    margin: 5px;
    text-align: center;
    height: 262px;
}

.w-3 {
    width: 32%;
    float: left;
    margin: 0 5px;
}
/* カテゴリTOP見出しバナー */
.reccomend-tab img {
    width: 32%;
}
.reccomend-tab-half img{
    width: 49%;
}
.w-20{
    width: 20%;
}
.w-80{
    width: 80%;
}
.float-l{
    float: left;
}
.float-r{
    float: right;
}

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

/**********************
共通
**********************/
.w-20{
    width: 20%;
}
.w-80{
    width: 80%;
}


html.js {
    margin-top: 0 !important;
}

.inner{
    width: 98%;
    margin: 0px auto !important;
}

.contents {
    width: 98%;
    margin:0 auto;
}

#main {
    width: 70%;
}

#side {
    width: 28%;
}

#footer {
    clear: both;
}

h3 {
    font-size: 24px;
    padding-left: 0;
}

h4 {
    font-size: 21px;
}

.four_box {
    width: 47.2%;
}




/**********************
ヘッダー
**********************/

#header {
    border-bottom:2px solid #049ec4;
}

#header .inner {
    margin: 0 auto !important;
}

#header .header_right {
    padding: 20px 0 10px;
}

#header .header_left {
    padding: 20px 0 10px;
}

#header .header_right .header_contact_btn {;
    text-align: left;
}

#wprmenu_bar {
    left: 90%;
    width: 60px;
    position: absolute;
    padding: 10px 16px;
    cursor: pointer;
    overflow: hidden;
    z-index: 99999;
    height: 55px !important;
}

nav#menu {
    display: none;
}

#wprmenu_bar div.hamburger {
    margin-top: 4px;
}

/**********************
サイドバー
**********************/

.side_content li a {
    font-size: 18px;
}


/**********************
トップページ
**********************/

.about_box {
    width: 43.6%;
}

.about_box .about_txt h4 {
    text-align: left;
}

.reason_ttl {
    font-size: 16px;
}

.reason_ttl span {
    padding: 3px 8px;
}

.voice_box {
    width: 30.6%;
}

.search_box {
    width: 24.1%;
}

.search_box2 {
    width: 49.4%;
}

.contact_bnr {
    margin: 50px 0;
}

.info_img {
    width: 34%;
}

.info_txt {
    width: 62.8%;
    font-size: 14px;
}

.info_txt span {
    font-size: 18px;
}



/**********************
お墓の値段
**********************/

.type_item {
    width: 22.1%;
}

.type_content {
    padding: 0px;
}

.balloon:before {
    top: 99%;
}

/**********************
お客様の声
**********************/

.voice_faq .voice_txt {
    width: 51%;
}

.voice_faq .voice_pic {
    padding: 0px;
}

.voice_faq .voice_txt_l {
    width: 80.5%;
}

.voice_faq .box_three {
    width: 28.5%;
}

.voice_faq .box_three p {
    text-align: left;
    text-indent:-1em;
    padding-left: 1em;
}


/**********************
アフターサービス
**********************/

.service_list ul li {
    margin: 0px 5px 10px 0;
    width: 31.5%;
    font-size: 12px;
}

.service_box .box_three {
    margin: 6px;
}

.service_box .box_four {
    margin: 6px;
}

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

.profile_img {
    margin-right: 19px;
}

/**********************
お問い合わせ
**********************/


.table_info tr th {
    width: 28%;
}

/**********************
メールフォーム 
**********************/

input[type="submit"], input[type="reset"], input[type="button"] {
    width: 45%;
}

/**********************
墓石工事の流れ
**********************/

.flow_box {
    width: 25%;
}

.flow_box .flow_text {
    font-size: 10px;
}

.flow_arrow_bottom_right ,.flow_arrow_bottom_left{
    margin: 5px 55px;
}

.complete_flow_box {
    margin: 6px;
}

/**********************
職場訪問学習
**********************/

.visit_pic_area .visit_text {
    padding-left: 13px;
}

.visit_pic_area .visit_text_left {
    padding-right: 13px;
}

.visit_pic_box {

    margin: 0%;
}


/**********************
寄贈
**********************/

.donation_pic_box {
    margin: 0%;
}

/**********************
商品詳細
**********************/

.detail_pic_box {
    width: 39%;
}

.detail_table th {
    width: 36%;
}




#relations li {
    float: left;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 10px 5px 0 5px; 
    border-bottom: none;
}

#relations li a ,#page_pn a {
    text-decoration: none;
}



#header .header_right img {
    max-width: 70%!important;
    height: auto;
}

#header .header_right .contact_btn {
    margin-left: 10px;
    margin-top: -18px;
}

.togmenu {
    display: block;
}

nav#menu ul li {
    float: left;
    width: auto;
    text-align: center;
    border: none;
    line-height: 50px;
    width: 25%;
}

nav#menu ul {
    overflow: hidden;
    margin-bottom: 0px;
}


div.breadcrumbs {
    max-width: 90%;
    margin: 20px auto;
    padding-top: 180px;
}

.sakura {
    background-size: 100%;
}

.concept p {
    text-align: left;
    font-size: 20px;
    padding-left: 280px;
}

.info_box {
    width: 40%;
}

/*
.link_btn {
    width: 90%;
}
*/

.reserve_info {
    font-size: 16px;
}

.reserve_img {
    width: 90%;
}


.choose .left_box {
    display: inline-block;
    width: 49%;
    margin:0 7px 50px 0;
    float:left;
    vertical-align: top;
}

.choose .right_box {
    display: inline-block;
    width: 49%;
    margin:0 0 50px 5px;
    float:left;
    vertical-align: top;
}


.choose .choose_box .choose_box_logo {
    display: none;
}

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

.voice .voice_box .text_box h5 {
    width: 72%;
    vertical-align: top;
}

.voice .voice_box .text_box .voice_profile {
    vertical-align: top;
}

.series_btnimg_box .series_btnimg {
    width: 46%;
}

.series_box {
    width: 47%;
}

.access_box {
    width: 40%;
    height:auto;
}

.point .image_box {
    display: block;
    width: 100%;
    margin: 20px auto;
    text-align: center;
}

.point .text_box {
    display: block;
    width: 100%;
}

.point .text_box h4 {
    font-size: 30px;
}

.recommend h3 {
    font-size: 34px;
    margin: 0 10px 30px;
}

.recommend .inbox {
    width: 47%;
    margin-bottom:30px;
}

.recommend .inbox .inbox_ttl {
    font-size: 20px;
    padding: 10px;
    margin-bottom: 0px!important;
}

.flow .step {
    text-align:center!important;
}

.contactform th {
    width: 30%;
    border: none;
    padding: 20px 0 20px;
}

.contactform td {
    width: 70%;
    border: none;
    padding: 20px;
}

span.wpcf7-list-item {
    display: inline-block;
    margin: 0 0 0 1em;
    width: 45%;
}

.lineup .lineup_pic {
    display: inline-block;
    width: 50%;
    vertical-align: top;
}

.lineup .lineup_text {
    display: inline-block;
    width: 46%;
    vertical-align: top;
    padding: 5px 0 0 20px;
}

.lineup .lineup_text {
    font-size: 14px;
}

#relations li a ,#page_pn a {
    text-decoration: none;
}

.image_lineup .lineup_box {
    width: 49%;
}

.series_footer .series_footer_box {
    width: 31%;
}

.w-3 {
    width: 100%;
    margin: 5px;
}

/* カテゴリTOP見出しバナー */
.reccomend-tab img {
    width: 100%;
}
.reccomend-tab-half img{
    width: 49%;
}

}






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

/**********************
共通
**********************/
.w-20{
    width: 100%;
}
.w-80{
    width: 100%;
}
.pc {
    display: none;
}

.sp {
    display: block;
}

#main {
    width: auto;
}

#side {
    width: auto;
    display: block;
}

.side_content li a {
    font-size: 26px;
}

.side_content li a span {
    font-size: 20px;
}

h3 {
    font-size: 18px;
}

h5 {
    font-size: 17px;
}

#sp_tel {
    display: block;
    position: fixed;
    bottom:0;
    z-index: 99;
}

#footer {
    padding-bottom: 80px;
}

#page-top {
    bottom: 100px !important;
}

/**********************
ヘッダー
**********************/

#header .header_left {
    width: 70%;
    display: block;
    padding: 15px 0 10px;
}

#wprmenu_bar {
    left: 80%;
}

#header .header_right .header_tel_btn {
    display: none;
}

#header .header_right {
    width: auto;
    display: none;
    float: none;
    text-align: center;
}


/**********************
トップページ
**********************/

.about_box {
    width: auto;
}

.about_box .about_txt h4 {
    font-size: 18px;
}


.reason_ttl {
    background: #0080FF;
    padding: 6px 10px;
    color: #fff;
    margin-bottom: 10px;
    padding-left: 90px;
    text-indent: -72px;
    line-height: 1em;
}

.voice_box {
    width: 47.2%;
}


.search_box {
    width: 49%;
}

.search_box2 {
    width: auto;
    margin-bottom: 10px;
}

.info_img {
    width: auto;
}

.info_txt {
    width: auto;
    font-size: 14px;
    margin-top: 10px;
}

/**********************
お墓の値段
**********************/

.type_item {
    width: 45.8%;
    margin-bottom: 0;
}

.four_box {
    display: inline-block;
    width: 96%;
    margin: 0 0 10px;
}


/**********************
施工事例
**********************/

.tab_item {
    font-size: 20px !important;
    width: 45.5%;
    margin:5px;
}

.example_box {
    width: auto;
}


/**********************
お客様の声
**********************/

.voice_faq .voice_icon {
    width: 22%;
}

.voice_faq .voice_txt {
    width: 64.3%;
}

.voice_faq .voice_pic {
    width: 100%;
    text-align:center;
    margin-top: 10px;
}

.voice_faq .voice_txt_l {
    width: 64.3%;
}

.voice_faq .box_three {
    width: 46.2%;
    margin:5px;

}

/**********************
アフターサービス
**********************/


.service_list ul li {
    width: 47.7%;
    font-size: 13px;
}

.service_box .box_three {
    width: 45.6%;
}

.service_box .box_four {
    width: 45.6%;
}

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

.profile_img {
    margin-right: 0px;
    width: 28%;
}

.company_table th {
    width: auto;
    display: block;
}

.company_table td {
    display: block;
}

/**********************
お問い合わせ
**********************/

.table_info tr th {
    display: block;
    width: auto;
}

.table_info tr td {
    display: block;
}

/**********************
メールフォーム 
**********************/

input[type=text] {
    width: 95%;
}

/**********************
墓石工事の流れ
**********************/

.flow_box {
    width: auto;
}

.flow_box .flow_text {
    font-size: 20px;
}

.flow_arrow_last {
    width: 25%;
}

.complete_flow_box {
    width: auto;
}

/**********************
職場見学
**********************/

.visit_pic_area .visit_pic ,.visit_pic_area .visit_text ,.visit_pic_area .visit_text_left ,.visit_pic_area .visit_pic_right{
    width: auto;
}


.visit_pic_box {
    width: auto;
}

/**********************
寄贈
**********************/


.donation_pic_box {
    width: auto;
}

/**********************
商品詳細
**********************/

.detail_pic_box {
    width: auto;
}

.detail_text_box {
    width: 98%;
}

.price p {
    font-size: 22px;
}


.main_info {
    font-size: 20px;
    padding: 20px 30px;
}

.sakura {
    background: none;
}

.concept h3 {
    font-size: 24px;
}

.concept p {
    text-align: left;
    font-size: 16px;
    padding-left: 0px;
}

.info_box {
    display: block;
    width: 84%;
    margin: 0px 0px 30px;
    border: 2px solid #6ec332;
    padding: 20px;
    vertical-align: top;
}

.info_box h3 {
    font-size: 18px;
}

.info_box .news_area {
    margin-bottom: 30px;
}

.info_box .news_area .thumb_area {
    display: block;
    width: 60%;
    vertical-align: top;
    margin: 10px auto;
}

.info_box .news_area .text_area {
    display: block;
    width: 100%;
}

.about .about_img {
    display: block;
    width: 100%;
}

.about .about_text {
    display: block;
    width: 100%;
    margin-top:20px;
}


.series_btnimg_box .series_btnimg {
    display: block;
    width: 100%;
    margin:10px 0;
}

.series_btnimg_box .series_btnimg_l {
    display: block;
    width: auto;
    margin: 10px 0;
}

.reserve_img {
    width: 100%;
}


.choose .left_box {
    display: block;
    width: 100%;
    margin: 0 0 50px ;
    float: left;
    vertical-align: top;
}

.choose .right_box {
    display: block;
    width: 100%;
    margin: 0 0 50px;
    float: left;
    vertical-align: top;
}

.choose .choose_box .choose_box_logo {
    display: inline-block;
    width:320px;
    height: 320px;
    vertical-align: top;
}

.choose .choose_box {
    width:100%;
    text-align:center;
    margin-bottom:0px;
}


.voice .voice_box .image_box {
    display: block;
    width: auto;
    margin-bottom: 20px;
}

.voice .voice_box .text_box {
    display: block;
    width: auto;
    padding-left: 0px;
}

.voice .voice_box .text_box h5 {
    width: 62%;
    vertical-align: top;
}


.series_box {
    display: block;
    border: 2px solid #6ec332;
    width: 84%;
    margin: 0px 0px 30px;
    vertical-align: top;
    padding: 20px;
}


.access_box {
    display: block;
    width: auto;
    margin: 20px 0;
    height: auto;
}

.media {
    width: 42%;
}

.sp_ttl {
    display: block;
    margin-bottom:20px;
}

.pc_ttl {
    display: none;
}


#contents #main .home_area {
    margin-bottom: 30px;
}

#contents #main .home_area .thumb_area {
    display: block;
    width: 60%;
    vertical-align: top;
    margin: 10px auto;
}

#contents #main .home_area .text_area {
    display:block;
    width: 100%;
    vertical-align: top;
}



.recommend h3 {
    font-size: 20px;
    margin: 0 0px 30px;
}

.recommend .inbox {
    width: 100%;
    margin-bottom: 30px;
}

.flow .step {
    font-size: 24px;
}

.flow .step span {
    margin-right: 0px;
    display: block;
}

.flow .flow_text {
    font-size: 20px;
}

.triangle {
    width: 30%;
}


.faq .question {
    background-image: url(images/question.jpg);
    background-repeat: no-repeat;
    background-size: 40px;
    font-size: 20px;
    padding-left: 50px;
    margin-bottom: 20px!important;
}

.faq .answer {
    background-image: url(images/answer.jpg);
    background-repeat: no-repeat;
    background-size: 40px;
    font-size: 20px;
    padding-left: 50px;
    margin-bottom: 10px!important;
}

table.price  {
    display: none;
}

table.price_sp  {
    display: block;
    border-collapse: collapse;
    text-align: left;
    line-height: 1.5;
    width: 100%;
    margin-bottom:30px;

}

table.price_sp thead {
    width: 100%;
}

table.price_sp tbody {
    width: 100%;
}

table.price_sp thead th {
    padding: 10px;
    font-weight: bold;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 2px solid #ccc;
    background: #dcdcd1;
    text-align: center;
    width: 100%;
}

table.price_sp tbody th {
    width: 40%;
    padding: 10px;
    font-weight: bold;
    vertical-align: top;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    background: #ececec;
    text-align: center;
}

table.price_sp td {
    width: 20%;
    padding: 10px;
    vertical-align: top;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    text-align: center;
}

.contactform th {
    width: 90%;
    border: none;
    padding: 10px 0;
    display: block;
}


.contactform td {
    width: 90%;
    border: none;
    padding: 10px 0;
    display: block;
}

.required-contactform7{
  float: none;
  margin-left:15px;
}


span.wpcf7-list-item {
    display: inline-block;
    margin: 0 0 0 1em;
    width: 100%;
}

input[type="submit"], input[type="reset"], input[type="button"] {
    padding: 10px;
    background: #cf6a88;
    border: 0;
    width: 80%;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    line-height: 2em;
    height: auto;
    font-size: 30px;
    color: #fff;
}

.company tr {
    margin-bottom:30px;
    }

.company th {
    width: auto;
    display: block;
    padding:20px;
}

.company td {
    width: auto;
    display: block;
    padding: 20px ;
}

.message .img_box {
    display: block;
    width: auto;
}

.message .message_box {
    display: block;
    width: auto;
    padding-left: 0px;
}

.message .message_box h4 {
    text-align: center;
}

.lineup {
    margin-bottom:60px;
}

.lineup .lineup_pic {
    display: block;
    width: auto;
    vertical-align: top;
}

.lineup .lineup_text {
    display: block;
    width: auto;
    vertical-align: top;
    padding: 0px 0 0 0px;
    margin-top: 20px;
    font-size:16px;
}

.lineup_ttl {
    font-size: 14px;
    text-align: center;
}

.gohi_a_btnbox .gohi_a_btn,.gohi_b_btnbox .gohi_b_btn,.gohi_c_btnbox .gohi_c_btn,.gohi_d_btnbox .gohi_d_btn {
    width: 40%;
}

.option .thead {
    display: none;
}

.option td {
    margin-bottom:10px;
}


.option th,.option td{
  display: block;
  width: auto;
  font-size:20px;
  text-align: center;
}

.option tr:nth-child(odd){
  background-color: #fff;
}

.more_detail {
    float:none;
}


.note p {
    font-size: 20px;
}

.image_lineup .lineup_box {
    display: block;
    width: auto;
}


.hoyo_ttl {
    font-size: 32px;
}

.hoyo_2box {
    display: block;
    width: auto;
    margin:10px 0;
}

.hoyo_3box {
    display: block;
    width: auto;
    margin:10px 0;
}

.hoyo_text {
    font-size: 18px;
}

.consultation_box {
    display: block;
    width: auto;
    margin:15px 0;
}


.image_lineup .lineup_box_pre {
    display: block;
    width: auto;
}

.feature_pre_2box ,.feature_pre_3box{
    display: block;
    width: auto;
    margin:20px 0px;
}

.point .pre_text_box {
    display: block;
    width: auto;
}


.series_footer .series_footer_box {
    width: auto;
    display: block;
    margin:10px 0;
}

.tab_item {
font-size: 14px;
}





}