/* For Smartphone */
@media screen and (max-width: 560px) {

* { margin:0; padding:0; border:none;}

body { font-size:16px; line-height:1.8em; min-width:100%; color:#000000;}
body a{ color:#000000;}

h1 {margin:0; color:transparent; font-size:10px; font-weight: normal; line-height: 2.31; position: absolute; top:3px;right:3%;}
h2 {margin:0 auto 30px auto; color:#363a3b; font-size:20px; font-weight:100; line-height:1; }

#wrap-outer2nd h2.normal{ font-size: 32px; color: #363a3b; font-weight: bold; line-height: 1.6em; }
#wrap-outer2nd h2.normal span{display: block; font-size: 20px; font-weight: 500; color: #363a3b; position: relative; line-height: 1; z-index: 0; padding-bottom: 5px; margin-bottom: 30px; margin-left: 3px;}
#wrap-outer2nd h2.normal span:before{ display: block; content: ""; width: 6px; height: 6px; background: #565959; border-radius: 50%; position: absolute; top:0; bottom:0; left:90px; margin: auto; z-index: -1; opacity: .5;}
#wrap-outer2nd h2.normal span:after{ display: block; content: ""; width: 2000%; height: 1px; background: #565959; position: absolute; top:0; bottom:0; left:96px; margin: auto; z-index: -1; opacity: .5;}

h3 {color:#2c2721; font-size:20px; font-weight:bold; line-height:1; margin:0; padding:0;}

#wrap-outer2nd h3{ margin: 0 auto 15px auto; line-height: 1.6em; text-align: left; background: rgb(71,226,255); background: linear-gradient(90deg, rgba(71,226,255,1) 0%, rgba(56,212,255,1) 100%); color: #ffffff; padding:12px 20px 14px 20px;}


h4 {font-size:20px; margin-bottom:8px;}

#wrap-outer2nd h4{ /*font-size:16px;*/ box-sizing: border-box; padding: 10px 10px 10px 10px; letter-spacing: .5px; margin-bottom: 15px;}

#contents .contents-form .doc .points .points_desc h4{ font-size:22px; color:#f8b62b; margin:20px 0 20px 0; padding:10px 10px 6px 63px; border-bottom:2px solid rgba(248,182,43,.5);}
#contents .contents-form .doc .points .points_desc h4.before{ background:url(/images/contact/no_01.png) no-repeat left center; background-size:43px auto;}
#contents .contents-form .doc .points .points_desc h4.after{ background:url(/images/contact/no_02.png) no-repeat left center; background-size:47px auto;}


img{ max-width:100%;}
.pc{display: none;}

/*--- form --------------------------------------------------------------------------------------*/
input[type="text"],input[type="tel"] {font-size:100%; border:1px solid #DDD;}
input[type="submit"] {-webkit-appearance:none;}
label{margin-right:20px; display:block; margin-bottom:10px;}

.btn_mail, .btn_top, .btn_line, .send {display: flex; position: relative; width: 100%; height: 76px; color: #ffffff; text-align: center; font-size: 20px; font-weight: bold; text-decoration: none; padding: 0; overflow: hidden; transition: .3s; z-index: 1; border: none; box-sizing: border-box; background-color: #ff337a; border-radius:0; justify-content: center; align-items: center; margin:0 auto 0 auto; cursor:pointer; font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;}

.send{width:45%; float:right;}
	
.btn_top {margin-top:50px;}
.btn_line {background:#00adb8;}

.btn_area{padding: 0 5.1% 0 5.1%;}

.btn_back {display: flex; position: relative; width: 45%; height: 76px; color: #ffffff; text-align: center; font-size: 20px; font-weight: bold; text-decoration: none; padding: 0; overflow: hidden; transition: .3s; z-index: 1; border: none; box-sizing: border-box; background-color: #363a3b; border-radius:0 !important; justify-content: center; align-items: center; margin:0 auto 0 auto; cursor:pointer; font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; float:left;}

.btn_end {display: flex; position: relative; width: 45%; height: 76px; color: #ffffff; text-align: center; font-size: 20px; font-weight: bold; text-decoration: none; padding: 0; overflow: hidden; transition: .3s; z-index: 1; border: none; box-sizing: border-box; background-color: #ff337a; border-radius:0 !important; justify-content: center; align-items: center; margin:0 auto 0 auto; cursor:pointer; font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; float:right;}

.btn_more {display: flex; position: relative; width: 100%; height: 60px; color: #ffffff; text-align: center; font-size: 16px; font-weight: bold; text-decoration: none; padding: 0; overflow: hidden; transition: .3s; z-index: 1; border: 1px solid #ffffff; box-sizing: border-box; background:#e98153; border-radius:0 !important; justify-content: center; align-items: center; margin:20px auto 10px auto; cursor:pointer; font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; float:right;}

.link_btn{ text-align:center; margin-top:30px;}

.pc{ display:none !important;}

br.pc{ display:none;}
	

/*--- menu --------------------------------------------------------------------------------------*/
.pushy.pushy-right {}
.pushy-open-right .pushy { width: 100%; border: none; background: rgb(223,248,255); background: linear-gradient(180deg, rgba(223,248,255,1) 0%, rgba(209,248,255,1) 100%);}
.pushy-content{ width: 92%; margin: 0 auto 0 auto; box-sizing: border-box; padding-bottom: 70px;}
	
.pushy-content .right{ text-align: center;}
.pushy-content .right .foot_logo{display: block; width:100px;  margin:0 auto 0 auto;}
.pushy-content .right p{font-size: 14px; color: #4e5253; margin-top: 25px; text-align: center;}
	
	
.pushy-content .left{ margin:50px 0 50px 0;}
.pushy-content .left ul.link{border: none; padding: 0 0 15px 0; border-bottom: 1px #8ec9d7 dotted; }
.pushy-content .left ul.link > li{ display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: nowrap;padding-bottom: 14px; margin-bottom:0; border-bottom:1px #8ec9d7 dotted;}
.pushy-content .left ul.link > li > a{width: 150px; font-size:22px; font-weight: 600; color: #363a3b; letter-spacing: 0.06em; padding: 15px 0 0 0;}
.pushy-content .left ul.link > li .sub{ margin-top: 3px; border: none; margin-bottom: 4px;}
.pushy-content .left ul.link > li .sub > li{}
.pushy-content .left ul.link > li .sub > li > a{font-size: 16px; font-weight: 500; color: #575b5c; padding: 14px 0 0 0;}
.pushy-content .left ul.link > li:last-child{ border-bottom: none; padding-bottom: 0; margin-bottom: 0;}	
	
	

/*--- wrap-outer --------------------------------------------------------------------------------*/
#wrap-outer, #wrap-outer2nd, #wrap-outerContact {
width:100%; position:relative; height:auto !important; height:100%; min-height:100%; overflow: hidden; z-index: 0;
}
#wrap-outer2nd, #wrap-outerContact {background:none;}

#wrap-outerContact {margin-bottom:0px;}


/*--- wrap --------------------------------------------------------------------------------------*/
#wrap {width:100%; overflow: hidden;}
#wrap {width:100%;}

#contents .inn{ width: 92%; margin: auto;}


/*--- header ------------------------------------------------------------------------------------*/
header { margin: 0 3% 0 3%; padding-top: 20px; position: relative;}
header .inn{}
header .logo img{ width: 200px;}
	
header .inn > nav { margin: 20px 0 7px 0; padding-top: 3px;  }
header nav > ul.navi{overflow-x: auto; white-space: nowrap; -webkit-overflow-scrolling: touch; padding-right: 10px;}
header nav > ul.navi li{ display: inline-block; font-size: 19px; font-weight: 600; color: #575b5c; letter-spacing: 0.06em; margin-left: 10px;}
header nav > ul.navi li a{ color: inherit;}
header nav > ul.navi li + li{ margin-left: 30px;}
	
header nav .menu-btn{display : block; background: rgb(71,226,255); background: linear-gradient(90deg, rgba(71,226,255,1) 0%, rgba(56,212,255,1) 100%); position: fixed; z-index : 999999; right: 3%; top: 20px; width: 50px; height: 50px; cursor: pointer; border-radius: 50%; text-align: center; transition: .3s;}

header nav .menu-btn span { display : block; position: absolute; border-radius: 2px; width: 22px; height:2px; left:21px;  background: #ffffff; -webkit-transition: 0.3s ease-in-out; -moz-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out;}
header nav .menu-btn span:nth-child(1) { top: 22px; }
header nav .menu-btn span:nth-child(2) { top: 28px; }

header nav .menu-btn.active { background: none; -webkit-transition: all 0.3s ease-in-out; -o-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; -webkit-transition-delay: 0.6s; -o-transition-delay: 0.6s; transition-delay: 0.6s; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg);}
header nav .menu-btn.active span{ background: #363a3b;}
header nav .menu-btn.active span:nth-child(1),header nav .menu-btn.active span:nth-child(2){ left: 20px; -webkit-transition-delay: 0.3s; -o-transition-delay: 0.3s; transition-delay: 0.3s;}
header nav .menu-btn.active span:nth-child(1){top: 13px; -webkit-transform: translateY(4px); -ms-transform: translateY(4px); -o-transform: translateY(4px); transform: translateY(4px);}
header nav .menu-btn.active span:nth-child(2){top: 29px; -webkit-transform: translateY(-16px) rotate(90deg); -ms-transform: translateY(-16px) rotate(90deg); -o-transform: translateY(-16px) rotate(90deg); transform: translateY(-16px) rotate(90deg);}


/*--- contents ----------------------------------------------------------------------------------*/
#contents {margin:0 auto 0 auto; padding:0 0 0 0;}

	
/*--- 工事中 ----------------------------------------------------------------------------------*/
.kojichu{ background: linear-gradient(90deg, #f1faff, #c2e9fb, #a1c4fd, #fcfefe); background-size: 1400% 1400%;
 -webkit-animation: KojichuAnimation 50s ease infinite; -moz-animation: KojichuAnimation 50s ease infinite; animation: KojichuAnimation 50s ease infinite; overflow: hidden; }

@-webkit-keyframes KojichuAnimation {
    0%{background-position:0% 52%}
    50%{background-position:100% 49%}
    100%{background-position:0% 52%}
}
@-moz-keyframes KojichuAnimation {
    0%{background-position:0% 52%}
    50%{background-position:100% 49%}
    100%{background-position:0% 52%}
}
@keyframes KojichuAnimation {
    0%{background-position:0% 52%}
    50%{background-position:100% 49%}
    100%{background-position:0% 52%}
}
	
.kojichu #coming_soon{ display: flex; flex-direction: column; align-items: center; text-align: center; height: auto; padding-top: 45%;}
	
.kojichu #coming_soon h2{font-weight: 500; margin-bottom: 5px;}
.kojichu #coming_soon h2 span{font-size: 50px;}
.kojichu #coming_soon .logo{ display: block; margin: 0 auto 35px auto; width: 120px;}
.kojichu #coming_soon p{ margin-bottom: 80px; line-height: 1.8em; font-size: 14px;}
	
.js-block .char { display: inline-block; min-width: 0.25em; animation: translateX 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both, fadeIn 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19) both; opacity: 0;}
.visuallyHidden { position: absolute !important; width: 1px !important; height: 1px !important; margin: -1px !important; padding: 0 !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; border: 0 !important; }

/*.js-block{ opacity: 0; transition: .3s;}
.js-block.js-initialized{ opacity: 1;}*/
	
.js-text-top span{opacity: 0;}
.js-text-top.js-text--up span {
  animation: translateX 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both, fadeIn 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19) both;
}
	
@keyframes translateX { 0% { transform: translateX(50%); }  100% { transform: translateX(0); } }
@keyframes fadeIn { 0% {opacity: 0;} 100% {opacity: 1;} }
	
	
.js-text--3.js-text--up span {
  animation: text_anime_on 1s ease-out forwards;
}
@keyframes text_anime_on { 0% {opacity: 0;} 100% {opacity: 1;} }
	
	
/*--- contents/main ----------------------------------------------------------------------------------*/
#main_image{ margin-bottom: 70px; position: relative;}
#main_image .inn{ position: relative; }	
#main_image .inn:after{ display: block; clear: both; content: "";}
		
#main_image .swiper_block {overflow: hidden; margin: 30px 0 0 -40px; }
#main_image .swiper_block .swiper { width: 100%; height: 260px; border-radius: 15px; overflow: hidden;}
#main_image .swiper_block .swiper-slide { overflow: hidden; }
#main_image .swiper_block .swiper-slide img { height: auto; width: 100%; border-radius: 15px; overflow: hidden; object-fit: cover; }

#main_image .txt{ margin: 25px 4% 0 4%; /*width: 100%;*/ position: relative; z-index: 2;}
#main_image .txt h2{font-weight: 500; font-size: 42px; margin-bottom: 0; color: #363a3b; line-height: 1.25em;}
#main_image .txt h2 span{ display: inline-block;}
#main_image .txt p{font-size: 12px; font-weight: 600; color: #363a3b; margin-left: 2px; line-height: 1.8em;margin-top: 20px;}
	
#main_image .txt h2 .js-text--3{font-family:'Noto Sans JP', "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", "HanSerif Japanese", Meiryo, Osaka, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "ＭＳ ゴシック", ArialMT, sans-serif; font-size: 12px; font-weight: 600; color: #363a3b; margin-left: 2px; line-height: 1.8em; margin-top: 20px;}
	
	
#main_image .scrolldown{display: none;}
	
	
/*--- ボタン --------------------------------------------------------------------------------*/
a{text-decoration: none;}
	
.btn_small{display: block; font-size: 16px; font-weight: 400; color: #007741; background: transparent; border-bottom: 1px solid #007741; width: 150px; height: 45px; box-sizing: border-box; padding: 6.5px 0 0 0; position: relative; z-index: 1; transition: .3s; text-align: center;}
.btn_small:after{ display: inline-block; vertical-align: middle; content: ""; background: url(../images/top/indent_s_gr.png) no-repeat; background-size: 6px auto; width: 6px; height: 10px; margin-left: 15px; margin-bottom: 1px;}
.btn_small::before { content: ""; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: -1; background: #007741; transform-origin: 50% 0%; transform: scaleY(0); transition: transform ease .3s; border-radius: 50px; }
	
.btn_small:hover { color: #fff; opacity: 1 !important; border-radius: 50px; }
.btn_small:hover::after{ background: url(../images/top/indent_s_wh.png) no-repeat; background-size: 6px auto;}
.btn_small:hover::before { transform-origin: 50% 100%; transform: scaleY(1); }
	
	
.btn_normal{display: block; font-size: 18px; font-weight: 400; color: #ffffff; background: #363a3b; width: 100%; height: 76px; box-sizing: border-box; position: relative; z-index: 1; transition: .3s; text-align: center; margin-top: 30px;}
.btn_normal a{ display: block; color: inherit; padding: 22px 0 0 0; height: 100%; box-sizing: border-box;}
.btn_normal span{display: inline-block; font-weight: 700; margin-right: 3px;}
	
.btn_normal.black{ background-color: #242025; border: none; color: #ffffff;}

	
/*--- wrap_add00 --------------------------------------------------------------------------------*/	
.tit_s{ font-size: 20px; font-weight: 500; color: #363a3b; position: relative; line-height: 1; z-index: 0; padding-bottom: 5px; margin-bottom: 30px;}
.tit_s:before{ display: block; content: ""; width: 6px; height: 6px; background: #565959; border-radius: 50%; position: absolute; top:0; bottom:0; left:80px; margin: auto; z-index: -1; opacity: .5;}
.tit_s:after{ display: block; content: ""; width: 2000%; height: 1px; background: #565959; position: absolute; top:0; bottom:0; left:86px; margin: auto; z-index: -1; opacity: .5;}
h2.title{ font-size: 30px; margin-bottom: 20px; color: #363a3b; font-weight: bold; line-height: 1.6em; }
h2.title > span.title_in{ display: inline-block;}
h2.title > span.title_in span{opacity: 0;}
h2.title > span.title_in.appeartext span{ animation:text_anime_on 1s ease-out forwards; }
@keyframes text_anime_on {
  0% {opacity:0;}
  100% {opacity:1;}
}
	
#wrap_add00.concept { position: relative;}
#wrap_add00.concept:after{ display: block; content: ""; clear: both;}
#wrap_add00.concept .inn{position: relative; z-index: 1;}
#wrap_add00.concept .txt{}
#wrap_add00.concept .txt p{ font-weight:normal;}
#wrap_add00.concept .txt p + p{ margin-top: 20px;}
	
#wrap_add00.concept .bg_img{height: 350px; margin-top:25px; float: right; margin-bottom: 50px;}
#wrap_add00.concept .bg_img span{ display: block;}
#wrap_add00.concept .bg_img{ width: 450px;}
	
#wrap_add00.concept .bg{}
#wrap_add00.concept .bg > .bg_txt_a{font-size: 75px; font-weight: 500; color: rgba(56,182,224,0.05); position: absolute; z-index: 0; top:65px; left:0; display: flex; align-items: center; overflow:hidden; width: 100%; height: 60px; white-space:nowrap;}
#wrap_add00.concept .bg > .bg_txt_b{font-size: 75px; font-weight: 500; color: rgba(56,182,224,0.05); position: absolute; z-index: 0; top:140px; left:0; display: flex; align-items: center; overflow:hidden; width: 100%; height: 60px; white-space:nowrap;}

#wrap_add00.concept .bg > .bg_txt_a ul{animation: flowing02 80s linear infinite; transform:translateX(-50%); margin: 0; padding: 0;}
#wrap_add00.concept .bg > .bg_txt_b ul{animation: flowing 80s linear infinite; transform:translateX(0); margin: 0; padding: 0;}
#wrap_add00.concept .bg > .bg_txt_a li,#wrap_add00.concept .bg > .bg_txt_b li{display: inline-block; padding-right: 10px;}
	
@keyframes flowing {
  100% { transform:translateX(-50%); }
}
	
@keyframes flowing02 {
  100% { transform:translateX(50%); }
}
	
	
/*--- wrap_add01 --------------------------------------------------------------------------------*/
#wrap_add01.service{ position: relative; padding-top: 100px; }
#wrap_add01 .inn{position: relative;}

.service .tit_s span{font-family: 'Jost',sans-serif; font-size: 75px; color: #ffffff; position: absolute; font-weight: 800; opacity:.4; left:60px; top:-23px; z-index: -2; }
.service h2 + p{ font-weight:normal;}
.service .img_blocks{ width: 315px; margin: 40px auto 30px auto;}
.service .img_blocks img{width: 150px; border-radius: 15px; overflow: hidden;}
.service .img_blocks > div.img02{ margin: -80px 0 -20px 0; text-align: right;}
.service .img_blocks > div.img03{ margin-left: 60px;}	
	
	
/*--- wrap_add02 --------------------------------------------------------------------------------*/
#wrap_add02.service{ position: relative; padding-top: 150px; }
#wrap_add02 .inn{position: relative; box-sizing: border-box;}	
	
/*--- wrap_add03 --------------------------------------------------------------------------------*/
#wrap_add03.service{ position: relative; padding-top: 150px; }
#wrap_add03 .inn{position: relative;}
	
/*--- wrap_add04 --------------------------------------------------------------------------------*/
#wrap_add04{ padding-top: 150px; box-sizing: border-box; }
#wrap_add04 .inn{ position: relative;}
	
#wrap_add04 .works-slider{ margin-top: 50px;}
#wrap_add04 .works-slider .works-one{ width: 280px !important; height: auto; margin: 0 8px 0 8px;}
#wrap_add04 .works-slider .slick-slide img{width: 300px; border-radius: 30px; overflow: hidden;}	
	
#wrap_add04 .works-slider .slick-dots{bottom: -53px;}
#wrap_add04 .works-slider .slick-dots li{width: 25px; height: 3px; margin:0 3px 0 3px;}

	
	
/*--- wrap_add05 --------------------------------------------------------------------------------*/
#wrap_add05{ padding-top: 250px; }
#wrap_add05 .inn{ position: relative; box-sizing: border-box; z-index: 1;}
#wrap_add05 .img_block{ position: relative; z-index: 1;}
#wrap_add05 .img_block img{ width: 100%; border-radius: 15px; overflow: hidden;}	
	
	
#wrap_add05 .tit_s{ color: #ffffff; }
#wrap_add05 .tit_s:before{ left: 100px;}
#wrap_add05 .tit_s:after{ left: 106px;}
#wrap_add05 h2.title{ color: #ffffff; margin-bottom: 50px; font-size:28px;}

#wrap_add05 .link{ display: flex; width: 100%; justify-content: space-between; flex-wrap: wrap;}
#wrap_add05 .link li{width: 48%; margin-bottom: 50px;}
#wrap_add05 .link a{font-size: 18px; font-weight:bold; color: #ffffff;}
#wrap_add05 .link img{ display: block; border-radius: 15px; overflow: hidden; margin-bottom: 10px;}	
#wrap_add05 .link span{ display: block; border-bottom: 1px solid #ffffff; padding-bottom: 10px;}
	
#wrap_add05 .bg_circle{position: absolute; z-index: -1; background: #15b8ff; width: 1200px; height: 1200px; top:-100px; left:50%; margin-left: -600px; border-radius: 50%;}

	
	
/*--- wrap_add06 --------------------------------------------------------------------------------*/
#wrap_add06{ margin:100px 0 100px 0;}
#wrap_add06 .inn{ position: relative;}
#wrap_add06	ul.list{margin-top: 30px;}
#wrap_add06	ul.list li{display: block; width: 100%; font-size: 16px; font-weight: 400; color: #363a3b; box-sizing: border-box; background: rgb(242,248,252); background: linear-gradient(90deg, rgba(242,248,252,1) 0%, rgba(231,242,251,1) 100%); position: relative; padding: 20px 5% 20px 5%;}
#wrap_add06	ul.list li + li{ margin-top: 15px;}
#wrap_add06	ul.list li .day{font-family: 'Jost',sans-serif; font-size: 16.5px; display: block; }
#wrap_add06	ul.list li a{ text-decoration: underline; color: #33ccff;}

	
	
/*--- wrap_add07 --------------------------------------------------------------------------------*/
#wrap_add07{ margin-bottom: 100px;}
#wrap_add07 .inn{ position: relative;}
#wrap_add07 .box{ margin-top: 30px;}
#wrap_add07	.tel{background: rgb(242,248,250);background: linear-gradient(90deg, rgba(242,248,250,1) 0%, rgba(231,240,249,1) 100%);box-sizing: border-box; padding: 30px 0 25px 0}
#wrap_add07	.tel a{display: block; font-size: 40px;font-weight: 400;font-family: 'Jost',sans-serif;color: #363a3b; cursor:text; margin: auto; text-align: center;}
#wrap_add07	.tel a:hover{ opacity: 1 !important;}
#wrap_add07	.tel a:before{content: "Tel."; font-size: 28px; vertical-align: baseline;}
#wrap_add07	.tel p{text-align: center; font-size: 13px;font-weight: 400;color: #363a3b;line-height: 1.8em;margin-top: 15px;}
#wrap_add07	.tel p > .bold{font-size: 16px; font-weight: 700; display: block;}
#wrap_add07	.mail.btn_normal{ margin-top: 20px; }
	
	
/*--- footer ------------------------------------------------------------------------------------*/
#footer {width:100%;}
	
#footer > .inn{ position: relative; padding: 50px 3% 0 3%; }
#footer > .inn:before{ display: block; content: ""; width: 6px; height: 6px; background: #565959; border-radius: 50%; position: absolute; top:0; left:50px; margin: auto; z-index: -1; opacity: .5;}
#footer > .inn:after{ display: block; content: ""; width: 2000%; height: 1px; background: #565959; position: absolute; top:3px; left:56px; margin: auto; z-index: -1; opacity: .5;}

#footer .foot_wrap{ }
#footer .shop .foot_logo{display: block; width:100px;  margin:0 auto 0 auto;}
#footer .shop p{font-size: 14px; color: #4e5253; margin-top: 30px; text-align: center;}

#footer .f_menu{margin-top: 46px;}
#footer .f_menu ul{ margin: 0 -3.1% 0 -3.1%;}
#footer .f_menu li{ font-size: 19px; font-weight: 600; color: #575b5c; letter-spacing: 0.06em;}
#footer .f_menu li > a{display: block; color: inherit; background: url(../images/footer/indent.png) no-repeat right 5.1% center; background-size: 6px auto; padding: 12px 5.1% 13px 5.1%;}

#footer .f_menu li:nth-child(odd){background: rgb(243,249,250); background: linear-gradient(90deg, rgba(243,249,250,1) 0%, rgba(226,238,249,1) 100%);}
	
#footer .copyright{/*background: rgb(243,249,250); background: linear-gradient(90deg, rgba(243,249,250,1) 0%, rgba(226,238,249,1) 100%);*/ text-align: center; font-size: 10px; color: #575b5c; font-weight: 500; display: flex; height: 80px; align-items: center; justify-content: center;}
#footer .copyright > .inn{letter-spacing: 0.16em;}
	


/* --- */
#scrollUp {
	height: 30px;  /* Height of image */
	width: 60px; /* Width of image */
	background-size:60px auto;
	right: 3%;
}


/*--- contents-inner-pages ---------------------------------------------------------------------*/

/*==================================
2ndpage タイトル
==================================*/
#wrap-outer2nd .ttl {width:100%; height: 100%; position: relative; margin-top: -10px; margin-bottom: 150px; z-index: 1;}

#wrap-outer2nd .ttl .inn{ position: relative;}	
#wrap-outer2nd .ttl .inn:after{ display: block; clear: both; content: "";}
		
#wrap-outer2nd .ttl .img{overflow: hidden; width:auto; height: 300px; margin: 30px -4% 0 -4%; }
#wrap-outer2nd .ttl .img img { height: 100%; width: 100%; border-radius:0; overflow: hidden; object-fit: cover; }
	
#wrap-outer2nd .ttl .txt{ margin: 25px 0 0 0; width: 100%; position: relative; z-index: 2; text-align: center;}
#wrap-outer2nd .ttl .txt h2{font-weight: 500; font-size: 50px; margin-bottom: 8px; color: #363a3b; line-height: 1.25em;}
#wrap-outer2nd .ttl .txt h2 span{ display: inline-block;}
#wrap-outer2nd .ttl .txt p{font-size: 16px; font-weight: 600; color: #363a3b; margin-left: 2px;}

#wrap-outer2nd .ttl .inn:before{ display: block; content: ""; background: #363a3b; width: 1px; height: 50px; position: absolute; left:0; right:0; margin: auto; bottom:-100px;}

#wrap-outer2nd .ttl .inn.form_ttl{min-height: 0;}
#wrap-outer2nd .ttl .inn.form_ttl .img{height: 0;}
	
/*==================================
2ndpage navigation
==================================*/
#contents ul#contents_navi {width:100%; background:#E59; overflow:hidden; box-sizing:border-box; padding:10px;}
#contents ul#contents_navi li {float:left; font-size:12px;}
#contents ul#contents_navi li a {color:#FFF; text-decoration:none; display:block; background:url(/images/common/contents_navi_line.gif) no-repeat right center; padding-right:10px; margin-right:8px;}
#contents ul#contents_navi li.current a {font-weight:bold;}


/*==================================
2ndpage 共通
==================================*/
#contents-inner-pages {margin:0 auto 0 auto; /*font-size:16px;*/ line-height:1.6; padding:0 0 70px 0;}
#contents-inner-pages .inn{width:94%; margin:0 auto 0 auto;}
#contents-inner-pages:after {content:""; display:block; clear:both;}
#contents-inner-pages p.read {padding:0;}

#contents-inner-pages .sp_off{
	display:none;
}

#contents-inner-pages .common_h {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.3;
    margin:40px 0 20px 0;
	padding:0 10px 0 10px;
}

#contents-inner-pages .common_h_pink{
	color:#ee5599;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.3;
    margin:40px 0 20px 0;
	padding:0 10px 0 10px;
}

#contents-inner-pages .table_caption{
	font-weight:bold;
	font-size:18px;
	padding:0 10px 8px 10px;
}

#contents-inner-pages .text_img td{
	display: block;
	width:100% !important;
	padding:0 10px 0 10px;
	box-sizing:border-box;
}

#contents-inner-pages .text_img td:last-of-type{
	padding:10px 10px 0 10px;
}

#contents-inner-pages .text_img p{
	text-align:center;
}

#contents-inner-pages .text_img img{
	width:180px;
}


/*  table typeA  */
#contents-inner-pages table.common_table_type_a {margin:0 0 40px 0;}
#contents-inner-pages table.common_table_type_a th,
#contents-inner-pages table.common_table_type_a td {border-right:2px solid #FFF; border-bottom:2px solid #FFF; padding:10px; text-align:center; font-size:12px; font-weight:bold; line-height:1.4; box-sizing:border-box;}
#contents-inner-pages table.common_table_type_a td:first-child{ text-align:left;}
#contents-inner-pages table.common_table_type_a th:last-child,
#contents-inner-pages table.common_table_type_a td:last-child {border-right:none;}
/*color*/
#contents-inner-pages table.common_table_type_a th {background:#FC3; color:#432; border-bottom:2px solid #D7D3CD;}
#contents-inner-pages table.common_table_type_a td {}
#contents-inner-pages table.common_table_type_a tr:nth-child(even) {background:#F5F4F2;}
#contents-inner-pages table.common_table_type_a tr:nth-child(odd){background:#EBE9E5;}


/*  table typeB  */
#contents-inner-pages table.common_table_type_b {margin:0 0 40px 0;}
#contents-inner-pages table.common_table_type_b th,
#contents-inner-pages table.common_table_type_b td {display: block; width:100% !important; text-align:left; border-bottom:2px solid #FFF; padding:10px ; line-height:1.8; box-sizing:border-box;}
#contents-inner-pages table.common_table_type_b th{background:#EBE9E5; font-weight:bold; }
#contents-inner-pages table.common_table_type_b td{background:#F5F4F2; border-right:none;}



#contents-inner-pages .weight_normal tr td{
	font-weight:normal;
}

#contents-inner-pages .weight_normal tr td:first-of-type{
	font-weight:bold;
}

.gray_back{ background-color:#f8f4f3; padding:1px 10px 30px 10px; margin-top:30px;}

/*==================================
パンくず
==================================*/
#bread_navi{ background:url(../images/common/bread_bg.png) no-repeat left top; background-color:#48433c; min-height:30px; padding-top: 4px; padding-left: 25px; letter-spacing: .6px; box-sizing:border-box;}
#bread_navi li{ display:inline;}
#bread_navi li a{ display:inline-block; color:#ffffff; font-size:10px; text-decoration:none;}
#bread_navi li:first-child a{ font-weight:bold;}
#bread_navi li + li:before{ display:inline-block; content:""; background:url(../images/common/bread-icon.png) no-repeat; width:4px; height:8px; margin:0 7px 0 20px;}

/*==================================
会社概要
==================================*/
#contents-inner-pages #main_1col.company{ margin-bottom: -29px;}
#contents-inner-pages #company_info .photo{ text-align:center; margin: 20px auto 15px auto;}
#contents-inner-pages #company_info .photo li{ display: inline-block; padding: 3px; margin: 0 3px 0 3px; background-color: #f6f6f6; border: 1px solid #e6e6e6; box-sizing:border-box; width:47%;}
#contents-inner-pages #company_info .photo li img{ width:100%;}
#contents-inner-pages #company_info .photo li p{ display:table; width:100%; height:42vw; background:#e6e6e6;}
#contents-inner-pages #company_info .photo li p span{ display:table-cell; vertical-align:middle;}

#contents-inner-pages table.mod-table {width:100%; table-layout:fixed; border-collapse:collapse; text-align:left; background-color:transparent; display:block;}
#contents-inner-pages table.mod-table tbody,#contents-inner-pages table.mod-table tr{display: block;}
#contents-inner-pages table.mod-table th,
#contents-inner-pages table.mod-table td {display:block; padding:13px 17px 15px 17px; clear:both; color:#333333;}
#contents-inner-pages table.mod-table td span{font-weight: bold;}
#contents-inner-pages table.mod-table td a{ display:inline-block; /*margin-bottom:10px;*/}
#contents-inner-pages table.mod-table th {background: rgb(242,248,252); background: linear-gradient(90deg, rgba(242,248,252,1) 0%, rgba(231,242,251,1) 100%); vertical-align:top;}
#contents-inner-pages table.mod-table .gmap {width:100%; height:245px;}

#contents-inner-pages table.mod-table .add_box em{ display:table; font-weight:bold; margin-bottom:15px;}
#contents-inner-pages table.mod-table .add_box + .add_box{ border-top:1px dotted #b19f85; margin-top:15px; padding-top:15px;}

#contents-inner-pages table.mod-table .add_box .add{ width:100%; margin-bottom:10px;}
#contents-inner-pages table.mod-table .add_box .add a{ color:#444444; text-decoration:none;}


#contents-inner-pages table.mod-table a{ text-decoration: underline; color: #33ccff;}

#contents-inner-pages table.mod-table ul.list li{ list-style: circle; margin-left: 25px;}
#contents-inner-pages table.mod-table ul.list li + li{ margin-top: 8px;}	

#contents-inner-pages table.mod-table p span.bold{ display: block; margin-bottom: 2px;}
#contents-inner-pages table.mod-table p + p{ margin-top: 15px;}

#contents-inner-pages a.tel_link{ color:#000; text-decoration:none; }

	
#contents-inner-pages #company_info .im3{ display: block; width: 150px; margin: 20px auto 0 auto;}
	
	
#contents-inner-pages #history{ margin-top: 100px;}

	
/*==================================
スタッフ紹介
==================================*/
#contents-inner-pages #main_1col.block{margin-top: 160px}
	
#contents-inner-pages #main_1col.block section .txt + h3{ margin-top: 80px;}
#contents-inner-pages #main_1col.block section + section{ padding-top: 150px;}
	
#contents-inner-pages.staff .staff_detail{ }
#contents-inner-pages.staff .staff_detail .img{ margin: 30px 0 25px 0;}
#contents-inner-pages.staff .staff_detail .img img{ display: block; margin:0 auto 12px auto; width: 175px; height: 175px; border-radius: 15px; overflow: hidden;}

#contents-inner-pages.staff .staff_detail .img p{ margin-top: 15px; text-align: center; font-size: 20px; letter-spacing: 0.1em; font-weight: 300;}
#contents-inner-pages.staff .staff_detail .img p span{ display: block; font-size: 14px; letter-spacing: 0.03em; font-weight: 400; margin-bottom: -2px;}

#contents-inner-pages.staff .staff_detail .txt{}
#contents-inner-pages.staff .staff_detail .txt p + p{ margin-top: 15px;}

#contents-inner-pages.staff .staff_detail h3{ background: transparent; border-bottom: 2px solid rgb(56,212,255,1); color: rgb(56,212,255,1);padding:0 0 18px 0; font-size: 20px;}
#contents-inner-pages.staff .staff_detail * + h3{ margin-top: 30px;}

#contents-inner-pages.staff .staff_detail table.mod-table th,#contents-inner-pages.staff .staff_detail table.mod-table td{padding: 10px 3% 10px 3%; font-size: 15px;}
	
#contents-inner-pages.staff #main_1col.block section + section { padding-top: 80px;}
	
	
#contents-inner-pages.staff .staff_detail.type2{ display: flex; flex-direction: row; justify-content: space-between; flex-wrap: wrap;}
#contents-inner-pages.staff .staff_detail.type2 .box{width: 49%; margin-bottom: 20px;}
#contents-inner-pages.staff .staff_detail.type2 .box img{ display: block; margin:0 auto 8px auto; width: 150px; height: 150px; border-radius: 15px; overflow: hidden;}

#contents-inner-pages.staff .staff_detail.type2 .txt{width: auto; border-bottom: none; color: #363a3b; font-weight: 300; font-size: 20px; letter-spacing: 0.06em; text-align: center;}
#contents-inner-pages.staff .staff_detail.type2 .txt span{display: block; font-size: 11px; font-weight: 500; position: relative; line-height: 1; z-index: 0; letter-spacing: 0.16em;}
	
	
/*#contents-inner-pages.staff .staff_detail.type2{ fbackground: rgb(242,248,252);
    background: linear-gradient(90deg, rgba(242,248,252,1) 0%, rgba(231,242,251,1) 100%); padding: 30px 5% 30px 5%;}
	
#contents-inner-pages.staff .staff_detail.type2 + .staff_detail.type2{ margin-top: 50px;}
	
#contents-inner-pages.staff .staff_detail.type2 .img{ margin: 0 0 5px 0;}
#contents-inner-pages.staff .staff_detail.type2 .img img{ display: block; margin-bottom: 15px; width: 175px; height: 175px; border-radius: 15px; overflow: hidden;}
	
#contents-inner-pages.staff .staff_detail.type2 h3{ border-bottom: none; color: #363a3b; font-weight: 300; font-size: 24px; letter-spacing: 0.06em; text-align: center; margin-bottom: 0; padding-bottom: 23px;}
#contents-inner-pages.staff .staff_detail.type2 h3 span{display:block !important; font-size: 14px; font-weight: 500; position: relative; line-height: 1; z-index: 0; display: inline-block; vertical-align: middle; margin-bottom: 3px; letter-spacing: 0.16em;}
	
#contents-inner-pages.staff .staff_detail.type2 table.mod-table{border-top: 1px dotted rgba(0,0,0,0.2);}
#contents-inner-pages.staff .staff_detail.type2 table.mod-table tr{ border-bottom: 1px dotted rgba(0,0,0,0.2); background: transparent;}
	
#contents-inner-pages.staff .staff_detail.type2 table.mod-table th,#contents-inner-pages.staff .staff_detail.type2 table.mod-table td{padding: 15px 3% 15px 3%;}
#contents-inner-pages.staff .staff_detail.type2 table.mod-table th{ padding-bottom: 0;}	
#contents-inner-pages.staff .staff_detail.type2 table.mod-table td{ padding-top: 5px;}*/

	
/*==================================
ニュースリリース
==================================*/


#contents-inner-pages #news{ margin-top: 30px;}

#contents-inner-pages #news .news-list{ box-sizing:border-box;}

#contents-inner-pages #news .news-list li + li{ margin-top:20px; color:#3b352e;}

#contents-inner-pages #news .news-list li a{ color:#3b352e;}

#contents-inner-pages #news .news-list li span{ display:inline-block; vertical-align:middle; width:130px; height:30px; text-align:center; font-size:13px; border:1px solid #3b352e; padding-top: 4px; box-sizing: border-box;}
#contents-inner-pages #news .news-list li p{ font-size:13px; margin-top:12px;}


/*==================================
物件情報
==================================*/
#contents-inner-pages #js h3{ font-size:18px; padding: 15px 0 15px 0; margin-bottom:25px;}
#contents-inner-pages #js .category_label{ display: inline-block; float:right; padding:3px 5px 1px 5px; margin:10px 0 0 0; background-color:#a82525; color:#fff;text-align:center;}

#contents-inner-pages #js p + h4{ margin-top:25px;}
#contents-inner-pages #js p > small{ opacity:.7;}

#contents-inner-pages #js .inn.breadcrumb{ margin:-10px auto 30px auto; font-size:12px; color:#666666;}
#contents-inner-pages #js .inn.breadcrumb a{ color:#333333; opacity:1 !important;}
#contents-inner-pages #js .inn.breadcrumb a:hover{ color: #c81717; text-decoration:none;}

#contents-inner-pages #js .main_blocks{ display:block; margin-bottom:20px;}
#contents-inner-pages #js .main_blocks td{ display:block;}
#contents-inner-pages #js .main_blocks td:first-child{ margin-bottom:15px;}
#contents-inner-pages #js .main_blocks td:first-child img{ width:100% !important; height:auto !important;}
#contents-inner-pages #js .main_blocks td:last-child > p{ font-size:15px; font-weight:bold; margin-bottom:20px; color: #c81717;}
#contents-inner-pages #js .main_blocks td:last-child > p a{ font-weight:normal;}

#contents-inner-pages #js table.mod-table tbody,
#contents-inner-pages #js table.mod-table tr{ display: block;}

#contents-inner-pages #js table.mod-table th,
#contents-inner-pages #js table.mod-table td{ font-size: 14px; line-height:normal; padding: 10px 13px 10px 13px;}

#contents-inner-pages #js .inn > #contents_navi ul + ul{ margin-top:20px;}

#contents-inner-pages #js .inn > #contents_navi h4{ margin:20px 0 0 0; font-size: 18px; color: #ebc08b; font-weight: bold; border-left: 2px solid #a77941; background-color: #302c28; box-sizing: border-box; padding: 10px 10px 10px 20px; letter-spacing: .5px;}

#contents-inner-pages #js .inn > #contents_navi p{ position:relative; font-size:14px;}
#contents-inner-pages #js .inn > #contents_navi p a{ display:block; background-color: #f8efe6; color:#48433c; text-decoration:none; padding:13px 13px 13px 13px;}
#contents-inner-pages #js .inn > #contents_navi p + li{ border-top: 1px dotted #b3a89e;}
#contents-inner-pages #js .inn > #contents_navi p:before { content: ""; position: absolute; -webkit-transform: rotate(45deg); transform: rotate(45deg); top: 50%; right: 10px; width: 8px; height: 8px; margin-top: -3px; background: #48433c; transition: .3s;}
#contents-inner-pages #js .inn > #contents_navi p:after { content: ""; position: absolute; -webkit-transform: rotate(45deg); transform: rotate(45deg); top: 50%; right: 14px; width: 8px; height: 8px; margin-top: -3px; background: #f8efe6;}


/*==================================
物件情報　仕様イメージ
==================================*/
#contents-inner-pages #js #photo_img{ max-width:350px; margin:20px auto 30px auto;}
#contents-inner-pages #js #photo_img p{padding:0 15px 0 13px;}
#contents-inner-pages #js #photo_img td{margin:0; border:0; width: 48%; display: block; float: left;}

#contents-inner-pages #js #photo_img td:first-child{ padding:0 2% 0 0;}
#contents-inner-pages #js #photo_img td:nth-child(2){ padding:0 0 0 2%;}
#contents-inner-pages #js #photo_img td:nth-child(3){ padding:0 2% 0 0;}
#contents-inner-pages #js #photo_img td:nth-child(4){ padding:0 0 0 2%;}

#contents-inner-pages #js #photo_img #photos p{
padding:0;
margin:0 0 15px 0;
background-color:#eeeeee;
padding:7px;
width:100%;
height:140px;
overflow: hidden;
position:relative;
box-sizing: border-box;
/*box-shadow:0 2px 0 rgb(0,0,0,.15);*/
}


#contents-inner-pages #js #photo_img #photos p img { width:100% !important; height:auto !important; /*min-height:100%;*/}

#contents-inner-pages #js #photo_img #photos p div {
position:absolute;
bottom:0;
left: 0;
right: 0;
font-size:14px;
background-color: #eeeeee;
color: #333333;
padding:5px 5px 4px 5px;
line-height:1.5;
opacity:.98;
text-align:center;
}

#contents-inner-pages #js #photo_img > p{ padding:0;}

.lb-outerContainer,.lb-dataContainer{ max-width:80% !important; height:auto !important;}
#lightbox img{ max-width: 100%;}


/*==================================
物件情報　カテゴリ一覧
==================================*/

#contents-inner-pages #js h4 .category_label{ display: inline-block; float:right; padding:3px 5px 1px 5px; margin:-3px 0 0 0; background-color:#a82525; color:#fff;text-align:center;}

#contents-inner-pages #js #list .category-list li{ margin-bottom:30px;}

#contents-inner-pages #js #list .category-list .img{ width:100%; margin-bottom:15px;}
#contents-inner-pages #js #list .category-list .img img{ width:100% !important; height:auto !important;}

#contents-inner-pages #js #list .category-list .btn{ display:block; width:200px; border:1px solid #3b352e; color:#3b352e; text-align:center; box-sizing:border-box; padding: 13px 0 13px; text-decoration:none; font-size: 15px; margin-top:15px;}


/*==================================
物件情報　メイン
==================================*/
#contents-inner-pages #js #js-main-list *{ box-sizing:border-box;}
#contents-inner-pages #js #js-main-list > li{ width:100%; margin-bottom:20px; background-color: #f8efe6; padding:20px 20px 105px 20px; position:relative;}

#contents-inner-pages #js #js-main-list > li img{ width:100% !important; height:auto !important;}
#contents-inner-pages #js #js-main-list > li .h {font-size: 24px; font-weight: bold; color: #a77941; margin:20px 0 21px 0;}
#contents-inner-pages #js #js-main-list > li .h:after { display: block; content: ""; width: 15px; height: 1px; background-color: #a77941; margin: 12px 0 0 0; }
#contents-inner-pages #js #js-main-list > li p{ font-size:15px;}

#contents-inner-pages #js #js-main-list > li .btn{ display:block; position:absolute; bottom:30px; left:auto; right:auto; width:200px; border:1px solid #3b352e; color:#3b352e; text-align:center; box-sizing:border-box; padding: 13px 0 13px; text-decoration:none; font-size: 15px; font-weight: bold; margin-top:25px;}


/*==================================
採用情報
==================================*/
#contents-inner-pages .recruit_block{ margin-top: 160px;}

#contents-inner-pages #recruit_info .inn{ position: relative;}

#contents-inner-pages #recruit_info .txt p{ font-size: 16px; line-height: 1.95em;}
#contents-inner-pages #recruit_info .txt p + p{ margin-top: 35px;}
#contents-inner-pages #recruit_info .txt p br{ display: none;}
#contents-inner-pages #recruit_info h2 br{ display: none;}	
#contents-inner-pages #recruit_info h3{ margin: 50px -3.1% 20px -3.1%;}
#contents-inner-pages #recruit_info .btn_normal{ margin: 50px auto 0 auto; background-color: #ff337a;}
	
#contents-inner-pages #recruit_info .img_blocks{ width: 315px; margin: 35px auto 40px auto;}
#contents-inner-pages #recruit_info .img_blocks img{width: 150px; border-radius: 15px; overflow: hidden;}
#contents-inner-pages #recruit_info .img_blocks > div.img02{ margin: -80px 0 -20px 0; text-align: right;}
#contents-inner-pages #recruit_info .img_blocks > div.img03{ margin-left: 60px;}	
	
	
/*==================================
プライバシーポリシー
==================================*/
#contents-inner-pages .privacy p{}
#contents-inner-pages .privacy p + h3.normal{ margin-top: 30px;}
#contents-inner-pages .privacy p a{ color: inherit;}
	

/*==================================
新着情報
==================================*/
#contents-inner-pages .news {padding:0 10px 20px 10px;}
#contents-inner-pages .news table {margin-bottom:20px;}
#contents-inner-pages .news td.oshirase,
#contents-inner-pages .news td.blog {width:80px; font-size:13px; color:#FFF; display:inline-block; vertical-align:middle; padding:3px 4px 2px 4px; text-align:center;
box-sizing:border-box;}
#contents-inner-pages .news td.oshirase {background:#E59;}
#contents-inner-pages .news td.blog {background:#0AE;}
#contents-inner-pages .news td.date {padding-left:10px; font-weight:bold;}
#contents-inner-pages .news td img {width:100%;}
#contents-inner-pages .news td table td {display:block;}


/*==================================
準備中
==================================*/
#wrap-outer2nd .comming_soon{ margin:100px auto 100px auto; opacity:.75; text-align:center;}
#wrap-outer2nd .comming_soon h3{ font-size:26px; margin-bottom:0;}
#wrap-outer2nd .comming_soon h3:before{ display:none;}
#wrap-outer2nd .comming_soon h3 img{ display:block; margin:0 auto 15px auto; width:34px;}


/*==================================
お問い合わせ
==================================*/
#contents form .w1 {width:90%; box-sizing:border-box;}
#contents form .w2 {width:90%; box-sizing:border-box;}
#contents form .w3 {width:45%; box-sizing:border-box;}
#contents form .w4 {width:95%; box-sizing:border-box; border:1px solid #DDD;}

#contents .contents-form h2.line {font-size: 26px; font-weight: bold; color: #007741; position: relative; line-height: normal; margin: 0 auto 30px auto; }
#contents .contents-form input[type="text"],#contents .contents-form input[type="tel"] ,#contents .contents-form select{font-size:120%;}

#contents .contents-form {margin:0 0 20px 0;}

#contents .contents-form table#telephone {}
#contents .contents-form table#telephone td {font-size:14px; text-align:center; padding:0 10px 15px 10px;}
#contents .contents-form table#telephone td br {display:block;}
#contents .contents-form table#telephone td.number {padding:15px 0 0 0;}
#contents .contents-form table#telephone td.number a {font-size:36px; padding:50px 0 0 0; background:none; font-family:inherit;}
#contents .contents-form table#telephone td.number img {display:block; width:40px; height:auto; margin:0 auto 5px auto;}

#contents .contents-form table.basicTable {margin:0 auto 20px auto; border: none;}
#contents .contents-form table th, #contents .contents-form table td {display:block; box-sizing:border-box; padding:15px 10px; border: none;}
#contents .contents-form table th {border-bottom:none; background: rgb(242,248,252); background: linear-gradient(90deg, rgba(242,248,252,1) 0%, rgba(231,242,251,1) 100%);}
#contents .contents-form table td{ background-color: #ffffff; padding:20px 10px;}
#contents .contents-form .item {width:100%; margin:0 0 10px 0; padding:5px; box-sizing:border-box; background:#3BD; border-radius:6px; color:#FFF; font-weight:normal; white-space:nowrap; text-align:center;}
#contents .contents-form label { background-color: transparent !important; position: relative; padding: 3px 0 5px 27px; cursor: pointer; transition: .3s; line-height: 1; margin-bottom: 8px;}
#contents .contents-form label:hover{opacity: .7;}
#contents .contents-form input[type="radio"] {display: none;}
#contents .contents-form input[type="radio"] + label:before{ display: block; content: ""; position: absolute; top:2px; left:0; background-color: #daeaf3; width: 20px; height: 20px; border-radius: 50%;}
#contents .contents-form input[type="radio"]:checked + label{color: #33ccff;}
#contents .contents-form input[type="radio"]:checked + label:hover{opacity: 1;}
#contents .contents-form input[type="radio"]:checked + label:after{ display: block; content: ""; position: absolute; top:6px; left:4px; background-color: #33ccff; width: 12px; height: 12px; border-radius: 50%;}
#contents .contents-form select{ width: 100px; line-height: 1; color: #000; height: 38px;}
#contents .contents-form .value {margin:0;}
#contents .contents-form .lng {white-space:normal;}
#contents .contents-form .vlng {}
#contents .contents-form .required {color:#FFF; font-size:11px; vertical-align:middle; padding-left:10px;}
#contents .contents-form .supplement {color:#666; font-weight:normal; font-size:12px; margin-bottom:10px;}
#contents .contents-form .ex {color:#666; font-weight:normal; font-size:12px; display:block; padding:0; margin-top:10px;}
#contents .contents-form .reaffirmation {color:#666; font-weight:normal; font-size:12px; margin:10px 0 10px 0;}
#contents .contents-form .error_description,
#contents .contents-form .description1 {padding:0 0 15px 0;}
#contents .contents-form .error_list {padding:0 10px 0 10px;}
#contents .contents-form .error_list .alert {margin-bottom:15px; background:url(../images/contact/attention.gif) no-repeat 0 0; padding:5px 0 10px 50px; color:#e64545;}
#contents .contents-form .msg_top {padding:0 10px 0 10px;}

#wrap .form_btn_pos{text-align:center}
#contents .contents-form td.btn input{ padding:0; border:none;}
#contents .contents-form .bt td{background:none;}

 




.menu-btn {
top: 0px;
right:0px;
position:fixed;
z-index:1000003;
display: block;
width: auto;
min-width:35px;
cursor: pointer;
font-size:12px;
letter-spacing:1px;
text-align:center;
border-radius:0 0 0 0;
background-color:#007a42;
padding:4px 7px 7px 7px;
color:#FFF;
font-family: 'Dosis', 'Century Gothic', Helvetica, Arial, sans-serif; font-weight:normal;
}

.menu-btn span {
display: block;
height: 1px;
width: 100%;
background: #FFF;
border-radius: 0;
-webkit-transition: all .5s ease-in-out;
-moz-transition: all .5s ease-in-out;
transition: all .5s ease-in-out;
}

.menu-btn span:nth-of-type(1){
margin-top: 2px;
}

.menu-btn span:nth-of-type(2),
.menu-btn span:nth-of-type(3) {
margin-top: 6px;
}

.doc-btn {
	top: 0px;
    right: 50px;
    position: fixed;
    z-index: 1000003;
    display: block;
    width: auto;
    min-width: 35px;
    cursor: pointer;
    font-size: 10px;
    letter-spacing: 1px;
    text-align: center;
    border-radius: 0 0 0 8px;
    background-color: ##007741;
    padding: 6px 4px 7px 4px;
    color: #FFF;
    font-family: 'Century Gothic', Helvetica, Arial, sans-serif;
    font-weight: normal;
}

.doc-btn a{
	color:#fff;
	text-decoration:none;
	width: 100%;
    height: 100%;
    box-sizing: border-box;
    display: block;
}

.doc-btn img {
	padding: 4px 0 2px 0;
    width: 15px;
}

/* お問い合わせフォーム */
#contents .contents-form {margin:0 0 30px 0;}

#wrap-outer2nd .contents-form h2.normal{font-size: 28px;}
#wrap-outer2nd .contents-form h2.normal span{margin-bottom: 15px;}
#wrap-outer2nd .contents-form h2.normal span:before {left:180px;}
#wrap-outer2nd .contents-form h2.normal span:after {left:186px;}
	
#wrap-outer2nd .contents-form.entry h2.normal br{ display: none;}
#wrap-outer2nd .contents-form.entry h2.normal span:before {left:80px;}
#wrap-outer2nd .contents-form.entry h2.normal span:after {left:86px;}
#wrap-outer2nd .contents-form.entry h3{ margin-left: -3.1%; margin-right: -3.1%;}
	
#contents .contents-form .inn.doc{ width:94%; margin:auto;}
#contents .contents-form .doc > img{ margin:0 0 20px 0;}
#contents .contents-form .doc > img + p{ text-align:center;}

#contents .contents-form .doc .q_content{ text-align:left; background:url(/images/contact/people.png.jpg) no-repeat right bottom; background-size:70% auto; padding:20px 0 38% 0;}
#contents .contents-form .doc .q_content ul{ padding-left:10px;}
#contents .contents-form .doc .q_content ul li{ margin-bottom:15px; padding-left:30px; text-indent:-30px;}
#contents .contents-form .doc .q_content ul li::before{ display:inline-block; content:""; width:26px; height:27px; background:url(/images/contact/ico_check.png) no-repeat; margin:0 5px -4px 0;}
#contents .contents-form .doc .q_content ul li .bold{ font-weight:bold; display:inline;}

#contents .contents-form .doc .pre_box{ border:1px solid #ed6d1f; box-sizing:border-box; padding:140px 3% 15px 3%; margin:100px auto 0 auto; position:relative;}
#contents .contents-form .doc .pre_box p{ font-size:18px; line-height:52px; color:#ed6d1f; letter-spacing:0; text-align:center;}
#contents .contents-form .doc .pre_box p .bold{ font-weight:bold; display:inline-block; background:url(/images/contact/desc_under.png) no-repeat center bottom; line-height:1.6;}
#contents .contents-form .doc .pre_box img{ width:140px; position:absolute; top:-60px; left:50%; margin-left:-70px; box-shadow:8px 8px 0 rgba(0,0,0,.07);}

#contents .contents-form .doc .points{ padding:20px 3% 20px 3%; box-sizing:border-box; background:#fefcef; margin-top:40px; text-align:left;}
#contents .contents-form .doc .points .points_desc{}
#contents .contents-form .doc .points .points_desc ul{}
#contents .contents-form .doc .points .points_desc ul li{ padding-left:1em; text-indent:-1em;}

#contents .contents-form .doc .trial{ margin-top:40px; padding-bottom:80px; text-align:center;}
#contents .contents-form .doc .trial a{ display:block; width:94%; margin:auto; text-align:center; background:url(/images/contact/right_s_arrow.png?t=1), url(/images/contact/trial_btn_bg.png); background-repeat:no-repeat, repeat; background-position:19% center, center center; background-size:18px auto, auto auto; color:#fff; text-decoration:none; font-weight:bold; box-sizing:border-box; padding:17px 0 16px 14px; margin-top:16px; box-shadow:0 3px 0 #be5616;}
#contents .contents-form .doc .trial p{ font-size:14px; margin-top:15px;}

	#contents .contact_phone{ margin-top: 20px;}

#telephone.inquiry {margin: -10px auto 50px auto; text-align: center; padding: 18px 0 35px 0; background: rgb(242,248,250); background: linear-gradient(90deg, rgba(242,248,250,1) 0%, rgba(231,240,249,1) 100%);}

#telephone.inquiry h3{ font-weight: bold; font-size: 20px; background-color: transparent; margin-bottom: 17px; border-bottom: 1px dotted; padding-bottom:27px; max-width: 85%;}
	
#telephone.inquiry a.num { display:block; font-family:'Jost',sans-serif; font-size:35px; color:#242025; text-decoration:none; margin-bottom: -5px; letter-spacing: 0.06em;}
#telephone.inquiry a.num em:before{ content:"Tel."; display: inline-block; font-size:25px;}

#telephone.inquiry .open {font-size: 12px; line-height:1.6; }

#telephone.inquiry small{ font-size: 10px; opacity: .8; letter-spacing: 0;}
	
#contents .contents-form table.basicTable td input {border:1px solid #EEE; margin:0;}

#contents .contents-form .error_list .alert{
margin-bottom:5px;
background:url(../images/contact/attention.gif) no-repeat left center;
background-size: 20px auto;
padding:5px 0 5px 30px;
color:#e64545;
}

#contents .contents-form .g-recaptcha{margin-bottom:19px;}
    
.contents-form table.basicTable {border-top:1px solid #727171; margin-top:20px;}
.contents-form table.basicTable th,
.contents-form table.basicTable td {display:block; width:100%; padding:10px 0px 15px 0px; box-sizing:border-box; text-align:left; background:none; border-bottom:1px solid #727171;}
.contents-form table.basicTable th {padding:8px 10px 4px 10px;}
.contents-form table.basicTable .ex {color:#666; font-size:12px; padding-left:5px;}
.require {color:#ff337a; padding-left:5px;font-size:12px; font-weight:normal;}
.contents-form .contact_bt {margin-top:25px; text-align:center;}

#contents .contents-form.entry table.basicTable ul{ margin-bottom: -13px;}
#contents .contents-form.entry table.basicTable li{ margin-bottom: 15px; display: inline-block;}
	
	
.contents-form .error_list {margin:25px 0 20px 0;}
.contents-form .error_list .alert {
margin-bottom:15px;
background: url(../images/contact/attention.gif) no-repeat 0 0;
padding:5px 0 10px 50px;
color:#e64545;
}

/*.contents-form div { margin-bottom:10px}*/
.contents-form input[type="text"], .contents-form input[type="tel"], .contents-form textarea { margin:0 0 10px 0; padding:5px;}
.contents-form textarea { border:1px solid #ccc; width: 95%;}
.contents-form .imeDisabled {}
.contents-form .w1 {width:200px; border:1px solid #ccc;}
.contents-form .w2 {width:95%; border:1px solid #ccc;}
.contents-form .w3 {width:50px; border:1px solid #ccc;}
.contents-form .w4 {width:200px; border:1px solid #ccc;}

.contents-form div.privacy { padding: 10px; overflow: auto; height: 200px; border: 1px solid #ccc; background-color:#ffffff; font-size:80%;}
.contents-form div.privacy p + p{ margin-top:20px;}


	
.wrap_privacy_accept{text-align:center; margin:30px 0 30px 0; font-weight:bold;}

.privacy{ margin:10px 0 10px 0;}
.privacy_title{ margin:10px 10px 0px 10px;}
::-webkit-scrollbar { background:#ccc; width:15px; display:none;}
::-webkit-scrollbar-thumb { background:#aaa;}

.slick-dots li button:before
{
    top: -30px;
	z-index:100000;
}


