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

body {
	background:transparent url(../img/bg_body.jpg) repeat left top;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-style: normal;
	font-weight: 100;
	line-height:1.6;
	letter-spacing:0.1em;
}
#container {
}
#container:before {
	content:"";
	display:block;
	height:5px;
	background: linear-gradient(to right, #865f1b 0%, #dbb158 48%, #865f1b 100%);
}
.fadein {}
/*header
===========================================*/
.header {
	background-color: rgba(255, 255, 255, 0.8);
	padding:10px 0 0 0 ;

    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
	z-index:9999;
}
.header_inner {
	max-width:1080px;
	margin:0 auto;
}
.header_l {
	display: table-cell;
	width:39%;
	padding-right:1%;
	vertical-align: text-top;
}
.header_logo {
}
.header_logo img {
	width:100%;
	max-width:439px;
}
.header_c {
	display: table-cell;
	width:28%;
}
.header_c_tel {
line-height:140%;
}
.header_c_tel a {
	color:#333333;
	font-weight:400;
	text-decoration:none;
	font-size:3.6vw;
	letter-spacing:0em;
	white-space: nowrap;
}
.header_c_tel a:before {
	content: "";
	display: inline-block;
	width: 30px;
	height: 30px;
	background: url("../img/ico_phone.png") no-repeat;
	background-size: contain;
}
@media screen and (min-width: 1081px), print {
.header_c_tel a {
 font-size:240%;
}
}
.header_c_time {
	font-size:1.2vw;
}
@media screen and (min-width: 1081px), print {
.header_c_time {
 font-size:80%;
}
}
.header_r {
	display: table-cell;
	width:28%;
}
/* ---------- btn over ---------- */
.header_r .btn {
	width:100%;
	margin-bottom:5%;
	text-align:center;
}
/* btn over a */
.header_r .btn a {
	display: block;
	position: relative;
	background: #803333;
	padding:3% 0;
	width: 100%;
	color: #fff;
	text-decoration:none;
	transition: all 0.5s ease;
}
.header_r .btn a:before {
	content: "";
	position: absolute;
	top: 2px;
	left: 2px;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	border: rgba(255, 255, 255, 0.5) solid 1px;
	box-sizing: border-box;
}
.header_r .btn a:hover {
	background: #b35959;/*font-size: 110%;*/
}
.header_r .btn a:hover:before {
	opacity: 0;
}
/* btn over contact_btn_frame */
.header_r .btn a .contact_btn_frame:before {
	content: "";
	position: absolute;
	top: 2px;
	left: 2px;
	width: 0;
	height: 0;
	opacity: 0;
	transition: all 0.4s ease;
	backface-visibility: hidden;
}
.header_r .btn a .contact_btn_frame:after {
	content: "";
	position: absolute;
	right: 2px;
	bottom: 2px;
	width: 0;
	height: 0;
	opacity: 0;
	transition: all 0.4s ease;
	backface-visibility: hidden;
}
.header_r .btn a:hover .contact_btn_frame:before {
	opacity: 1;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	border: rgba(255, 255, 255, 0.9) solid 1px;
	border-right: 0;
	border-bottom: 0;
	box-sizing: border-box;
}
.header_r .btn a:hover .contact_btn_frame:after {
	opacity: 1;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	border: rgba(255, 255, 255, 0.9) solid 1px;
	border-left: 0;
	border-top: 0;
	box-sizing: border-box;
}
/* btn over em */
.header_r .btn a em {
	transition: all 0.5s ease;
	backface-visibility: hidden;
	display:table;
	width:96%;
	margin:0 auto;
	font-weight:100;
	line-height:100%;
}
.header_r .btn a em:before {
	content: "\e902";
	font-family: 'icomoon';
	display:table-cell;
	font-style:normal;
	font-size:2.1vw;
	vertical-align: middle;
	padding-left:6%;
}
 @media screen and (min-width: 1081px), print {
.header_r .btn a em:before {
 font-size:140%;
}
}
/* IE */
@media all and (-ms-high-contrast:none) {
.header_r .btn a em:before {
 font-size:2.3vw;
}
}
/* end IE */
	 
.header_r .btn a .contact_btn_large {
	font-size:2.0vw;
	line-height:110%;
}
@media screen and (min-width: 1081px), print {
.header_r .btn a .contact_btn_large {
 font-size:140%;
 letter-spacing:0em;
}
}
.contact_btn_large .otoiawase {
	font-size:70% !important;
	letter-spacing:0em;
}
.contact_btn_large .otoiawase:after {
	content: "\A";
	white-space: pre;
}
/* ---------- end btn over ---------- */

/*main_img
===========================================*/
.main_img {
}
.main_img img {
	display: block;
	width: 100%;
	margin:0 auto;
}
/*sec general
===========================================*/
/*
.sec_h {
	background:#87601b url(../img/h_bg.png) repeat-y center top;
	line-height:82px;
	color:#fff;
	font-size:3.4vw;
	text-align:center;
	margin-bottom:5%;
	letter-spacing:0em;
}
@media screen and (min-width: 1081px), print {
.sec_h {
 font-size:230%;
 letter-spacing:0.1em;
}

}
*/

.sec_h {
	background: linear-gradient(to right, #865f1b 0%, #dbb158 48%, #865f1b 100%);
	line-height:82px;
	color:#fff;
	font-size:3.4vw;
	text-align:center;
	margin-bottom:5%;
	letter-spacing:0em;
}
@media screen and (min-width: 1081px), print {
.sec_h {
 font-size:230%;
 letter-spacing:0em;
}

}

.sec_h:before {
	content:url("../img/h_ico_l.png");
	margin-right:15px;
}
.sec_h:after {
	content:url("../img/h_ico_r.png");
	margin-left:15px;
}
.sec_inner {
	max-width:1080px;
	padding:0 10px;
	margin:0 auto;
}
@media screen and (max-width:1080px), print {
.sec_inner {
 width:98%;
 padding:0;
}
}
/*sec_01
===========================================*/
.sec_01 {
	margin-bottom:10%;
}
.sec_01_01 {
	background:transparent url(../img/sec_ico_01.png) no-repeat center bottom;
}
.sec_01_01_tit {
	margin-bottom:2%;
	color:#976b27;
	font-size:130%;
	text-align:center;
}
.sec_01_01_img_01 {
	text-align:center;
}
.sec_01_01_txt {
	padding-top:5%;
	padding-bottom:8%;
	margin-bottom:5%;
	text-align:center;
}
.sec_01_02_tit {
	font-size:280%;
	text-align:center;
}
.sec_01_02_imgbox {
	width:100%;
	display: flex;
	flex-wrap: wrap;
	margin-bottom:5%;
}
.sec_01_02_imgbox p {
	width:50%;
}
.sec_01_02_imgbox p img {
	width:100%;
}
.sec_01_02_txt {
	background:transparent url(../img/sec_ico_01.png) no-repeat center bottom;
	padding-bottom:6%;
	margin-bottom:4%;
	text-align:center;
}
.sec_01_03_tit {
	font-size:280%;
	text-align:center;
}
.sec_01_03_imgbox {
	width:68%;
	margin:0 auto 4% auto;
	display: flex;
	flex-wrap: wrap;
}
.sec_01_03_imgbox_odd {
	width:28%;
}
.sec_01_03_imgbox_odd img {
	width:100%;
}
.sec_01_03_imgbox_even {
	width:8%;
	text-align:center;
}
.sec_01_03_imgbox_even img {
	/* vertical middle */
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);/* vertical middle */
}
.sec_01_03_txt {
	background:transparent url(../img/sec_ico_01.png) no-repeat center bottom;
	padding-bottom:6%;
	margin-bottom:4%;
	text-align:center;
}
.sec_01_04_imgbox {
	text-align:center;
	width:100%;
	max-width:560px;
	margin:0 auto;
}
.sec_01_04_imgbox iframe {
	margin-bottom:3%;
}
.sec_01_04_txt {
	text-align:center;
}
/*sec_02
===========================================*/
.sec_02 {
	margin-bottom:5%;
}
.sec_02_flex {
	width:100%;
	display: flex;
	flex-wrap: wrap;
}
.sec_02_flexbox {
	width:33.33%;
}
.sec_02_flexbox_inner {
	width:92%;
	margin:0 auto;
}
.sec_02_flexbox_img {
}
.sec_02_flexbox_img img {
	width:100%;
}
.sec_02_flexbox_tit {
	background:#ceb982 url(../img/sec_02_flexbox_tit_ico.gif) no-repeat left top;
	padding:3% 0;
	margin-bottom:4%;
	color:#333333;
	font-weight:bold;
	text-align:center;
	font-size:120%;
}
.sec_02_flexbox_txt {
	width:98%;
	margin:0 auto 12% auto;
}
/*sec_03
===========================================*/
.sec_03 {
	margin-bottom:10%;
}
.sec_03_flex {
	width:100%;
	margin-bottom:5%;
	display: flex;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	flex-wrap: wrap;
}
.sec_03_flexbox {
	background-color: rgba(128, 128, 128, 0.1);
	width:26%;
	padding:2%;
}
.sec_03_flexbox_tit_01 {
	display: table;
	margin: auto;
	padding:14% 0 5% 0;
	margin-bottom:10%;
	border-bottom:#976b27 solid 1px;
	color:#976b27;
	line-height:100%;
	font-size:120%;
}
.sec_03_flexbox_tit_01 span {
	font-size:260%;
}
.sec_03_flexbox_tit_02 {
	font-size:160%;
	text-align:center;
	margin-bottom:5%;
}
.sec_03_flexbox_txt {
	padding-bottom:8%;
}
.sec_03_01 {
}
.sec_03_01_inner {
	background:transparent url(../img/sec_03_img_01.png) no-repeat left top;
	background-size: 43% auto;
	width:98%;
	margin:0 auto;
}
.sec_03_01_inner dl {
	width:54%;
	float:right;
}
.sec_03_01_tit {
	padding:5% 0;
	color:#976b27;
	font-size:140%;
}
.sec_03_01_txt {
	padding-bottom:10%;
}
/*sec_04
===========================================*/
.sec_04 {
	margin-bottom:10%;
}
.sec_04_01 {
	background:#fff;
	width:90%;
	margin:0 auto 5% auto;
	padding:3% 1% 1% 1%;
	border:#f2e7dd solid 10px;
}
.sec_04_01_tbl_01 {
	display:table;
	width:100%;
	margin-bottom:2%;
}
.sec_04_01_tbl_01_td {
	display:table-cell;
	width:50%;
	text-align:center;
	font-size:160%;
}
.sec_04_01_tbl_01_td:nth-child(1) {
color:#976b27;
}
.sec_04_01_tbl_01_td img {
	width:100%;
}
.sec_04_01_tbl_02 {
	display:table;
	width:100%;
	margin:0 auto;
}
@media screen and (max-width:1080px), print {
.sec_04_01_tbl_02 {
font-size:2vw;
}
}
.sec_04_01_tbl_02_td_01 {
	display:table-cell;
	width:38%;
}
.sec_04_01_tbl_02_td_01 ul {
}
.sec_04_01_tbl_02_td_01 li {
	background-color:#f2e7dd;
	text-align:center;
	padding:10px 0;
	margin-bottom:1px;
}
.sec_04_01_tbl_02_td_02 {
	display:table-cell;
	width:24%;
}
.sec_04_01_tbl_02_td_02 ul {
}
.sec_04_01_tbl_02_td_02 li {
	background-color:#87601b;
	color:#fff;
	text-align:center;
	padding:10px 0;
	margin-bottom:1px;
}
.sec_04_01_tbl_02_td_03 {
	display:table-cell;
	width:38%;
}
.sec_04_01_tbl_02_td_03 ul {
}
.sec_04_01_tbl_02_td_03 li {
	background-color:#f0f1f5;
	text-align:center;
	padding:10px 0;
	margin-bottom:1px;
}
.sec_04_02 {
	margin-bottom:4%;
}
.sec_04_02_tit {
	background:transparent url(../img/sec_ico_01.png) no-repeat center top;
	padding-top:6%;
	margin-bottom:3%;
	font-size:200%;
	text-align:center;
}
.sec_04_02_tbl {
	display:table;
	width:86%;
	margin:0 auto;
}
.sec_04_02_tbl_td_01 {
	display:table-cell;
	width:38%;
	text-align:center;
}
.sec_04_02_tbl_td_01_tit {
	display:inline-block;
	background:#87601b;
	color:#fff;
	padding:1% 8%;
	margin-bottom:2%;
	font-size:160%;
}
@media screen and (max-width:1080px), print {
.sec_04_02_tbl_td_01_tit {
font-size:2.4vw;
}
}
.sec_04_02_tbl_td_01_logo {
	margin-bottom:5%;
}
.sec_04_02_tbl_td_01_logo img {
	width:50%;
}
.sec_04_02_tbl_td_01_arw {
	margin-bottom:6%;
}
.sec_04_02_tbl_td_02 {
	display:table-cell;
	width:24%;
}
.sec_04_02_tbl_td_03 {
	display:table-cell;
	width:38%;
	text-align:center;
}
.sec_04_02_tbl_td_03_tit {
	display:inline-block;
	background:#85878f;
	color:#fff;
	padding:2% 8%;
	margin-bottom:10%;
	font-size:120%;
}
@media screen and (max-width:1080px), print {
.sec_04_02_tbl_td_03_tit {
font-size:1.8vw;
}
}
.sec_04_02_tbl_td_03_arw {
	margin-bottom:6%;
}
.sec_04_03 {
	color:#803333;
	border:#d9d5d3 double 3px;
	width:80%;
	margin:0 auto;
	padding:2%;
	font-size:110%;
}
/*sec_05
===========================================*/
.sec_05 {
	margin-bottom:10%;
}
.sec_05_flex {
	background:#fff;
	width:100%;
	display: flex;
	flex-wrap: wrap;
}
.sec_05_flexbox {
	width:25%;
}
.sec_05_flexbox:nth-child(1), .sec_05_flexbox:nth-child(3), .sec_05_flexbox:nth-child(6), .sec_05_flexbox:nth-child(8) {
 background:#fff;
 display:table-cell;
 vertical-align:middle;
}
.sec_05_flexbox_inner {
	padding:0 6%;
	text-align:center;
	/* vertical middle */
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);/* vertical middle */
}
.sec_05_flexbox_logo {
	margin-bottom:8%;
}
.sec_05_flexbox_logo img {
	width:100%;
}
.sec_05_flexbox_tit {
	font-size:160%;
	padding-bottom:5%;
	margin-bottom:5%;
	position: relative;
	display: inline-block;
}
@media screen and (max-width:1080px), print {
.sec_05_flexbox_tit {
font-size:2.6vw;
}
}
 .sec_05_flexbox_tit::before {
 content: "";
 position: absolute;
 left: 0;
 right: 0;
 bottom: 0;
 border-bottom: 2px solid #976b27;
 width : 60px;
 margin: 0 auto;
}
.sec_05_flexbox_txt {
}
.sec_05_flexbox_img img {
	width:100%;
}
/*sec_06
===========================================*/
.sec_06 {
	margin-bottom:10%;
}
.sec_06_flex {
	width:100%;
	display: flex;
	flex-wrap: wrap;
}
.sec_06_flexbox {
	width:50%;
}
 .sec_06_flex:nth-child(odd) .sec_06_flexbox:nth-child(2), .sec_06_flex:nth-child(even) .sec_06_flexbox:nth-child(2) {
background:#fff;
}
.sec_06_flexbox_inner {
	padding:0 4%;
	/* vertical middle */
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	/* vertical middle */
 text-align:center;
}
.sec_06_flexbox_img img {
	width:100%;
}
.sec_06_flexbox_tit {
	background:transparent url(../img/sec_ico_01.png) no-repeat center bottom;
	font-size:160%;
	padding-bottom:7%;
	margin-bottom:4%;
}
/*sec_07
===========================================*/
.sec_07 {
	margin-bottom:10%;
}
.sec_07_flowbox {
	background:transparent url(../img/sec_07_arw.png) no-repeat center bottom;
	display:table;
	width:100%;
	padding-bottom:65px;
	margin-bottom:1%;
}
.sec_07_flowbox:nth-child(5) {
background:none;
}
.sec_07_flowbox_inner {
	display:table-cell;
	width:70%;
}
.sec_07_img {
	display:table-cell;
	width:30%;
	text-align:right;
	vertical-align:top;
}
.sec_07_tit {
	display:table;
	width:100%;
	margin-bottom:3%;
}
.sec_07_tit dt {
	display:table-cell;
	background-color:#56483f;
	padding: 0;
	margin: 0;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	color: #fff;
	line-height: 80px;
	text-align: center;
	font-size:140%;
}
.sec_07_tit dd {
	display:table-cell;
	color:#976b27;
	font-size:160%;
	padding-left:1%;
}
/*sec_08
===========================================*/
.sec_08 {
	margin-bottom:10%;
}
.sec_08_txt {
	background:transparent url(../img/sec_ico_01.png) no-repeat center bottom;
	padding-bottom:7%;
	margin-bottom:4%;
	text-align:center;
}
.sec_08_tbl:nth-child(2),.sec_08_tbl:nth-child(3) {
 background:transparent url(../img/sec_ico_01.png) no-repeat center bottom;
 padding-bottom:7%;
 margin-bottom:4%;
}
.sec_08_tbl_tit {
	display: table;
	margin: auto auto 1% auto;
	padding:0.4% 2%;
	border:#976b27 solid 2px;
	color:#976b27;
	font-size:160%;
}
.sec_08_tr {
	display:table;
	width:80%;
	margin:0 auto;
	padding:1% 0;
}
.sec_08_td_01 {
	display:table-cell;
	width:45%;
	text-align:center;
	vertical-align:middle;
}
.sec_08_td_02 {
	display:table-cell;
	width:10%;
	text-align:center;
	vertical-align:middle;
}
.sec_08_td_03 {
	display:table-cell;
	width:45%;
	text-align:center;
	vertical-align:middle;
}
 .sec_08_tbl .sec_08_tr:nth-child(2) {
font-size:160%;
border-bottom:#bfbcba solid 1px;
}
.sec_08_tbl .sec_08_tr {
	border-bottom:#bfbcba dotted 1px;
	font-size:130%;
}
.sec_08_tbl .sec_08_tr:nth-child(3) .sec_08_td_01, .sec_08_tbl .sec_08_tr:nth-child(4) .sec_08_td_01, .sec_08_tbl .sec_08_tr:nth-child(5) .sec_08_td_01, .sec_08_tbl .sec_08_tr:nth-child(6) .sec_08_td_01, .sec_08_tbl .sec_08_tr:nth-child(7) .sec_08_td_01 {
color:#803333;
}
.sec_08_td_02 img {
	vertical-align: baseline;
}
.sec_08_tbl .zeinuki {
	width:90%;
	text-align:right;
}
/*sec_09
===========================================*/
.sec_09 {
	margin-bottom:10%;
}
.sec_09_flex {
	width:100%;
	display: flex;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	flex-wrap: wrap;
}
.sec_09_flexbox {
	width:30%;
}
.sec_09_name {
	display: table;
	font-size:160%;
	border-bottom:#8c8988 dotted 1px;
	margin-bottom:10%;
}
.sec_09_name span {
	font-size:60%;
}
 .sec_09_flexbox:nth-child(1) li {
 display:table;
 width:100%;
}
.sec_09_flexbox:nth-child(1) li span {
 display:table-cell;
}
.sec_09_flexbox:nth-child(1) li span:nth-child(1) {
 width:25%;
}
.sec_09_flexbox:nth-child(1) li span:nth-child(2) {
 width:75%;
}
.sec_09_flexbox:nth-child(2) ul, .sec_09_flexbox:nth-child(3) ul {
margin-left:17px;
}
.sec_09_flexbox:nth-child(2) li, .sec_09_flexbox:nth-child(3) li {
 list-style-type:disc;
}
/*sec_10
===========================================*/
.sec_10 {
	margin-bottom:3%;
}
.sec_10_imgbox {
	width:100%;
	margin-bottom:5%;
	display: flex;
	flex-wrap: wrap;
}
.sec_10_imgbox img {
	width:25%;
	display:block;
}
.sec_10_01 {
	width:100%;
	display: flex;
	flex-wrap: wrap;
}
.sec_10_01_l {
	width:50%;
}
.sec_10_01_l dl {
	width:100%;
	display: flex;
	flex-wrap: wrap;
}
.sec_10_01_l dt {
	width:20%;
}
.sec_10_01_l dd {
	width:80%;
}
.sec_10_01_r {
	width:50%;
}
.sec_10_01_r table {
	font-size:1.8vw;
}
@media screen and (min-width: 1081px), print {
.sec_10_01_r table {
 font-size:110%;
}
}
.sec_10_timetable {
	width:100%;
	border-top:#999999 solid 1px;
	border-left:#999999 solid 1px;
}
.sec_10_timetable th {
	border-right:#999999 solid 1px;
	border-bottom:#999999 solid 1px;
	background:#d9d3ce;
	text-align: center;
	padding:3% 0;
}
.sec_10_timetable td {
	border-right:#999999 solid 1px;
	border-bottom:#999999 solid 1px;
	background:#ffffff;
	text-align: center;
	padding:3% 0;
}
.sec_10_timetable_txt {
	clear:both;
	text-align:right;
	margin-bottom:5%;
}

#map_container {
	position: relative;
	width:100%;
	max-width:1080px;
	height:400px;
	margin: 0 auto;
}
#map_canvas {
	width:100% !important;
	margin: 0 auto;
	height:100%;
}

/*footer
===========================================*/
.rtop {
	position:relative;
	width:100%;
	height:0;
	margin:0 auto;
	text-align:right;
}
.rtop a {
	position:fixed;
	right:0;
	bottom:0
}
.copyright {
	text-align:center;
	font-size:80%;
	padding-bottom:3%;
}
/*contact
===========================================*/


.contact {
	padding:3% 0;
}
.contact_inner {
	border:#bfbcba solid 2px;
	width: 100%;
	max-width:1080px;
	margin:0 auto;
	padding:3% 0;
}
.contact_tit {
	background:transparent url(../img/sec_ico_01.png) no-repeat center bottom;
	padding-bottom:2%;
	margin-bottom:3%;
	font-size:260%;
	text-align:center;
	letter-spacing:0.1em;
}
.contact_box {
	width:94%;
	margin:0 auto;
	display: flex;
	flex-wrap: wrap;
}
.contact_l {
	width:52%;
}
.contact_r {
	width:48%;
}
.contact_l_tel {
	margin-bottom:9%;
}
.contact_l_tel_01 {
	background: transparent url(../img/ico_phone.png) no-repeat left center;
	padding-left:40px;
}

@media screen and (max-width:1080px), print {
.contact_l_tel_01 {
	background-size: contain;
}
}

.contact_l_tel_01 a {
	text-decoration:none;
	font-size:4.8vw;
	line-height:1;
	color:#4c3c32;
}
@media screen and (min-width: 1081px), print {
.contact_l_tel_01 a {
 font-size:350%;
}
}

/* IE */
@media all and (-ms-high-contrast:none) {
.contact_l_tel_01 a {
 letter-spacing:0.1em;
 font-size:3.6vw;
 line-height:1.2;
}
}
/* IE */
.contact_l_tel_02 {
	line-height:1;
	color:#4c3c32;
	padding:1% 0;
	font-size:90%;
	letter-spacing:0.2em;
	line-height:140%;
}
.contact_l_logo {
	margin-bottom:5%;
}
.contact_l_logo p:nth-child(1) img {
 display:block;
 width:100%;
 max-width:439px;
 margin-bottom:3%;
}
.contact_l_logo p:nth-child(2) img {
 display:block;
 width:100%;
 max-width:329px;
}
/* ---------- btn over ---------- */
.contact .btn {
	width:100%;
	margin-bottom:5%;
	text-align:center;
}
/* btn over a */
.contact .btn a {
	display: block;
	position: relative;
	background: #803333;
	padding:4% 0;
	width: 100%;
	color: #fff;
	text-decoration:none;
	transition: all 0.5s ease;
}
.contact .btn a:before {
	content: "";
	position: absolute;
	top: 2px;
	left: 2px;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	border: rgba(255, 255, 255, 0.5) solid 1px;
	box-sizing: border-box;
}
.contact .btn a:hover {
	background: #b35959;/*font-size: 110%;*/
}
.contact .btn a:hover:before {
	opacity: 0;
}
/* btn over contact_btn_frame */
.contact .btn a .contact_btn_frame:before {
	content: "";
	position: absolute;
	top: 2px;
	left: 2px;
	width: 0;
	height: 0;
	opacity: 0;
	transition: all 0.4s ease;
	backface-visibility: hidden;
}
.contact .btn a .contact_btn_frame:after {
	content: "";
	position: absolute;
	right: 2px;
	bottom: 2px;
	width: 0;
	height: 0;
	opacity: 0;
	transition: all 0.4s ease;
	backface-visibility: hidden;
}
.contact .btn a:hover .contact_btn_frame:before {
	opacity: 1;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	border: rgba(255, 255, 255, 0.9) solid 1px;
	border-right: 0;
	border-bottom: 0;
	box-sizing: border-box;
}
.contact .btn a:hover .contact_btn_frame:after {
	opacity: 1;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	border: rgba(255, 255, 255, 0.9) solid 1px;
	border-left: 0;
	border-top: 0;
	box-sizing: border-box;
}
/* btn over em */
.contact .btn a em {
	transition: all 0.5s ease;
	backface-visibility: hidden;
	display:table;
	width:96%;
	margin:0 auto;
	font-weight:100;
	line-height:100%;
}
.contact .btn a em:before {
	content: "\e902";
	font-family: 'icomoon';
	display:table-cell;
	font-style:normal;
	font-size:2.8vw;
	vertical-align: middle;
	padding-left:13%;
}
 @media screen and (min-width: 1081px), print {
.contact .btn a em:before {
 font-size:180%;
}
}
/* IE */
@media all and (-ms-high-contrast:none) {
.contact .btn a em:before {
 font-size:3.3vw;
}
}
/* end IE */
	 
.contact .btn a .contact_btn_large {
	font-size:2.5vw;
	line-height:100%;
}
@media screen and (min-width: 1081px), print {
.contact .btn a .contact_btn_large {
 font-size:180%;
}
}
.contact_btn_large .otoiawase {
	font-size:60%;
}
.contact_btn_large .otoiawase:after {
	content: "\A";
	white-space: pre;
}
/* ---------- end btn over ---------- */

.contact_r_add {
	font-size:90%;
	text-align:right;
}
/*common
===========================================*/
.nodisp_sp {
	display:none !important;
}




/*common
===========================================*/
    .inviewfadeIn {
        opacity: 0;
        transition: .8s;
    }
    
    .fadeIn {
        opacity: 1.0;
    }
    
    .inviewUp {
        transform: translate(0, 40px);
        -webkit-transform: translate(0, 40px);
        transition: .8s;
    }
    
    .Up {
        transform: translate(0, 0);
        -webkit-transform: translate(0, 0);
    }
    
    .inviewfadeInUp {
        opacity: 0;
        transform: translate(0, 60px);
        -webkit-transform: translate(0, 60px);
        transition: .8s;
    }
    
    .fadeInUp {
        opacity: 1.0;

        transform: translate(0, 0);
        -webkit-transform: translate(0, 0);
    }
    
    .inviewzoomIn {
        transform: scale(0, 0);
        -webkit-transform: scale(0, 0);
        transition: .8s;
    }
    
    .zoomIn {
        transform: scale(1, 1);
        -webkit-transform: scale(1, 1);
    }
