@charset "utf-8";

#jikobukken_page #contents_wrapper{
	padding-top: 104rem;
}
#jikobukken_new #jikobukken_page #contents_wrapper{
	padding-top: 0;
}

/*---------------------------------------
navi
---------------------------------------*/
#global_navi{
	width:100%;
	height:104rem;
	position: fixed;
	z-index: 9000;
	background-color:#fff;
	top: 0;
	transition: all 0.6s;
}

.add_slide #global_navi{
	top:-30rem;
}

#global_navi h1{
	position:absolute;
	left:10rem;
	top:5rem;
	font-size:10rem;
	font-weight:500;
	color:#ccc;
}


#global_navi h2{
	width:300rem;
	position:absolute;
	left:10rem;
	top:35rem;
}

#global_navi ul{
	width:296rem;
	height:74rem;
  justify-content: space-between;
  align-items: center;
	display: flex;
	flex-wrap: wrap;
	position:absolute;
	right:0;
	top:30rem;
}

#global_navi ul li{
	width:74rem;
	height:74rem;
	position:relative;
}

.nav_toggle {
	width:74rem;
	height:74rem;
	z-index: 3;
}

.nav_toggle span {
	width:35rem;
	height:5rem;
}

.nav_toggle span:nth-of-type(1) {
	top:20rem;
}

.nav_toggle span:nth-of-type(2) {
	top:33rem;
}

.nav_toggle span:nth-of-type(3) {
	bottom:23rem;
}

.open .nav_toggle span:nth-of-type(1) {
  transform: translateY(13rem) rotate(-45deg);
}

.open .nav_toggle span:nth-of-type(2) {
  opacity: 0;
}

.open .nav_toggle span:nth-of-type(3) {
  transform: translateY(-13rem) rotate(45deg);
}

#sidebar {
	display:block;
	width: 100%;
	height: 100%;
	position: fixed;
	z-index: 300;
	background-color:#3a5f41;
	right:-110%;
	transition: all 0.6s;
	overflow-y: scroll;
}

#global-nav{
	width: 100%;
	height:100%;
	position:relative;
	transition: all 0.6s;
}

.open #sidebar{
	top: 104rem;
	right: 0;
}

#global-nav p{
	font-size:36rem;
	color:#fff;
	font-weight:500;
	text-align:center;
	padding-top:80rem;
}

#global-nav ul.navi_list{
	width:540rem;
	margin:60rem auto 50rem;
  justify-content: center;
  align-items: top;
	display: flex;
	flex-wrap: wrap;
	padding:20rem 0 25rem;
	border-top:2rem solid #a3b4a6;
	border-bottom:2rem solid #a3b4a6;
}

#global-nav ul.navi_list li{
	width:100%;
	text-align: left;
}

#global-nav ul.navi_list li a{
	color:#fff;
	font-size:28rem;
	padding:15rem 0 20rem 25rem;
	display:block;
	width:100%;
	display:block;
	position: relative;
	box-sizing:border-box;
	font-weight:500;
}

#global-nav ul.navi_list li a:after{
	content: "";
	position: absolute;
	left:0;
	top:calc(50% - 8rem);
  width: 0;
  height: 0;
  border-left: 10rem solid #fff;
  border-top: 8rem solid transparent;
  border-bottom: 8rem solid transparent;
}

#global-nav #top_navi{
	width:430rem;
	margin:80rem auto 0;
}

#global-nav #top_navi a{
	display:block;
	font-size:28rem;
	color:#fff;
	font-weight:500;
	text-align:center;
	border:2rem solid #a3b4a6;
	padding:20rem 0;
}

#global-nav ul.navi_sns{
	width:310rem;
  margin: 40rem auto 0;
	display: flex;
  justify-content: space-between;
  align-items: center;
	flex-wrap: wrap;
	position:relative;
	padding-bottom:150rem;
}

#global-nav ul.navi_sns li a{
	display:block;
	width:60rem;
}

/*--------------------------------------
mainvisual
----------------------------------------*/
#mainvisual{
  width: 100%;
  max-width: none;
  min-width: 100%;;
  margin: 104rem auto 0;
  display: block;
  position: relative;
  left: 0;
  transform: translateX(0);
  object-fit: cover;
}

/*--------------------------------------
buyback
----------------------------------------*/
#buyback{
  width: 592rem;
	height:923rem;
  margin: 70rem auto 0;
  position: relative;
	background: url(/files/user/img/jikobukken/new/buyback_bg_sp.jpg?v=1765449360) no-repeat center top #fff;
	background-size:100% auto;
}

#buyback h2{
	font-size:35rem;
	color:#fff;
	text-align:center;
	font-weight:400;
	padding-top:65rem;
	line-height:1.6;
}

#buyback p{
	font-size:19rem;
	color:#fff;
	text-align:center;
	padding-top:10rem;
	line-height:1.6;
}

#buyback ul{
	width:524rem;
	height:260rem;
	position:relative;
	display: flex;
  justify-content: space-between;
  align-items: start;
	flex-wrap: wrap;
	margin:50rem auto 0;
}

#buyback ul li{
	width:150rem;
	height:165rem;
	background: url(/files/user/img/jikobukken/new/buyback_list.png?v=1765449360) no-repeat center top;
	background-size:cover;
	font-size:26rem;
	color:#fff;
	font-weight:500;
	text-align:center;
	box-sizing:border-box;
	padding-top:52rem;
	position:relative;
}

#buyback ul li:nth-child(4){
	position:absolute;
	left:95rem;
	bottom:0;
}

#buyback ul li:nth-child(5){
	position:absolute;
	right:95rem;
	bottom:0;
}

#buyback::before {
  content: '';
  position: absolute;
  bottom: 0;
	left:0;
	right:0;
	margin:auto;
  width: 2rem;
  height: 36rem;
  background-color:#fff;
}

#buyback::after {
  content: '';
  position: absolute;
  bottom: -36rem;
	left:0;
	right:0;
	margin:auto;
  width: 2rem;
  height: 36rem;
  background-color:#123524;
}

/*--------------------------------------
reason
----------------------------------------*/
.arrow{
	content: "";
	position: absolute;
	bottom: -44rem;
	left: calc(50% - 24rem);
	border: 20rem solid transparent;
}

#reason .arrow{
	border-top: 25rem solid #f2f1ed;
}

#reason{
  width: 100%;
  margin: 90rem auto 0;
	padding:70rem 0;
  position: relative;
	background-color:#f2f1ed;
	text-align:center;
}

#reason h2{
	display:inline-block;
	font-size:51rem;
	color:#3a5f41;
	text-align:center;
	font-weight:700;
	letter-spacing:1rem;
	border-bottom:3rem solid #3a5f41;
	padding:0;
}

#reason p.eng{
	font-size:19rem;
	color:#3a5f41;
	text-align:center;
	padding:10rem 0 50rem;
	line-height:1.6;
}

.reason_inner{
	width:592rem !important;
	margin:0 auto;
}

.reason_inner h3{
	text-align:left;
}

.reason_inner h3{
	position:relative;
	width:100%;
	height:74rem;
	font-size:29rem;
	font-weight:500;
	color:#fff;
	line-height:74rem;
	background-color:#3a5f41;
	letter-spacing:2rem;
	box-sizing:border-box;
	padding-left:20rem;
}

.reason_inner h3 .fc_y{
	color:#f1ffa3;
}

.reason_inner h3 .label{
	width:74rem;
	height:74rem;
	position:absolute;
	right:0;
	top:0;
	background-color:#123524;
	font-size:21rem !important;
	color:#fff !important;
	line-height:1.2 !important;
	padding:0 !important;
	display: flex;
  justify-content: center;
  align-items: center;
	flex-wrap: wrap;
}

.reason_inner p.lead{
	font-size:23rem !important;
	color:#252525 !important;
	text-align:left !important;
	margin-left:0 !important;
	padding:20rem 0 0 0 !important;
	line-height:1.6;
}

.reason_img{
	display:block;
	width:100%;
	margin-top:20rem;
}

#reason1,
#reason2{
	margin-bottom:50rem;
}

#reason1,
#reason2,
#reason3{
	width:100%;
	height:auto;
	position:relative;
	display: flex;
  justify-content: center;
  align-items: center;
	flex-wrap: wrap;
	border:none;
}

#reason1:after,
#reason2:after,
#reason3:after {
	content: "";
	position: absolute;
	right: 0;
	top:0;
	width: 0;
	height:0;
	background:none;
}

#reason1 h3,
#reason2 h3,
#reason3 h3{
	margin-left:0;
}

#reason2 p.lead{
	margin-left:0 !important;
}


/*--------------------------------------
safe
----------------------------------------*/
#safe{
  width: 100%;
  margin: 0 auto;
	padding:70rem 0;
  position: relative;
}

#safe .catch{
	width:510rem;
	height:140rem;
	margin:0 auto;
	display: flex;
  justify-content: center;
  align-items: center;
	flex-wrap: wrap;
	background-color:#74a17c;
	padding: 6rem;
	position:relative;
	box-sizing: content-box;
}

#safe .catch::before {
  content: "";
  pointer-events: none;
  position: absolute;
  top: 6rem;
  left: 6rem;
  right: 6rem;
  bottom: 6rem;
  border: 1rem solid #fff;
  box-sizing: border-box;
}

#safe .catch .catch_inner{
	text-align:center;
}

#safe .catch .catch_inner h2{
	display:inline-block;
	font-size:34rem;
	color:#fff;
	font-weight:600;
	letter-spacing:2rem;
	border-bottom:3rem solid #fff;
	padding:0 0 12rem 0;
	line-height:1.0;
}

#safe .catch .catch_inner h2 span{
	font-size:53rem;
	vertical-align: baseline;
}

#safe .catch .catch_inner p.eng{
	font-size:19rem;
	color:#fff;
	text-align:center;
	padding:10rem 0;
	line-height:1.0;
	font-weight:500;
}

#safe ul{
	width:560rem;
	margin:30rem auto 0;
	position:relative;
	display: flex;
  justify-content: space-between;
  align-items: start;
	flex-wrap: wrap;
}

#safe ul li{
	width:280rem;
	position:relative;
}

#safe ul li .safe_img{
	width:225rem;
	position:relative;
	margin:0 auto;
}

#safe ul li p{
	font-size:23rem;
	text-align:center;
	line-height:1.6;
	margin-top:10rem;
}

#safe ul li:nth-child(1),
#safe ul li:nth-child(2){
	margin-bottom:20rem;
}

/*--------------------------------------
contact
----------------------------------------*/
#contact{
  width: 100%;
	height:890rem;
  margin: 0 auto;
  position: relative;
	background: url(/files/user/img/jikobukken/new/contact_bg_sp.jpg?v=1765449363) no-repeat center center;
	background-size:cover;
}

#contact .catch{
	text-align:center;
	padding-top:120rem;
}

#contact .catch h2{
	display:inline-block;
	font-size:33rem;
	color:#fff;
	font-weight:500;
	letter-spacing:1rem;
	line-height:1.4;
	border-bottom:3rem solid #fff;
	padding:0 0 20rem 0;
}

#contact .catch p.eng{
	display:block;
	font-size:19rem;
	color:#fff;
	font-weight:500;
	letter-spacing:1rem;
	padding-top:10rem;
}

#contact ul{
	width:574rem;
	margin:40rem auto 0;
	position:relative;
	display: flex;
  justify-content: space-between;
  align-items: start;
	flex-wrap: wrap;
}

#contact ul li{
	width:574rem;
	margin-bottom:30rem;
}

#contact ul li a{
	display:block;
	width:574rem;
	height:110rem;
	box-sizing:border-box;
	display: flex;
  justify-content: center;
  align-items: center;
	flex-wrap: wrap;
	border:2rem solid #fff;
	margin-top:0;
	position:relative;
	transition: 0.4s ;
}

#contact ul li:nth-child(1) a{
	background-color:#0096ae;
	font-size:43rem;
	color:#fff;
	font-weight:500;
	letter-spacing:2rem;
	line-height:1.0;
	box-sizing:border-box;
}

#contact ul li:nth-child(1) a p{
	margin-left:19rem;
}

#contact ul li:nth-child(1) a span{
	display:block;
	font-size:19rem;
	color:#fff;
	font-weight:500;
	letter-spacing:2rem;
	padding-top:10rem;
	margin-left:0;
	text-align:center;
}

#contact ul li:nth-child(1) a:after {
	content: "";
	position: absolute;
	left:95rem;
	top:18rem;
	width: 50rem;
	height: 50rem;
	background: url(/files/user/img/jikobukken/new/icon_phone.png?v=1765449365) no-repeat center center;
	background-size:cover;
}

#contact ul li:nth-child(2) a{
	background-color:#ff7b32;
	font-size:28rem;
	color:#fff;
	font-weight:500;
	letter-spacing:2rem;
	line-height:1.0;
	box-sizing:border-box;
}

#contact ul li:nth-child(2) a p{
	margin-left:45rem;
}

#contact ul li:nth-child(2) a:after {
	content: "";
	position: absolute;
	left:105rem;
	top:calc(50% - 25rem);
	width: 50rem;
	height: 50rem;
	background: url(/files/user/img/jikobukken/new/icon_mail.png?v=1765449365) no-repeat center center;
	background-size:cover;
}

#contact ul li:nth-child(3) a{
	background-color:#369836;
	font-size:28rem;
	color:#fff;
	font-weight:500;
	letter-spacing:2rem;
	line-height:1.0;
	box-sizing:border-box;
}

#contact ul li:nth-child(3) a p{
	margin-left:40rem;
}

#contact ul li:nth-child(3) a:after {
	content: "";
	position: absolute;
	left:150rem;
	top:calc(50% - 25rem);
	width: 50rem;
	height: 50rem;
	background: url(/files/user/img/jikobukken/new/icon_line.png?v=1765449365) no-repeat center center;
	background-size:cover;
}

#contact .arrow{
	border-top: 25rem solid #fff;
	bottom: auto;
	top:0;
}

/*--------------------------------------
case
----------------------------------------*/
#case{
  width: 100%;
  margin: 0 auto;
  position: relative;
	background-color:#f2f1ed;
	padding-bottom:30rem;
}

#case .catch{
	text-align:center;
	padding-top:80rem;
}

#case .catch h2{
	display:inline-block;
	font-size:40rem;
	color:#3a5f41;
	font-weight:500;
	letter-spacing:1rem;
	line-height:1.4;
	border-bottom:3rem solid #3a5f41;
	padding:0 100rem 10rem 100rem;
}

#case .catch p.eng{
	display:block;
	font-size:19rem;
	color:#3a5f41;
	font-weight:500;
	letter-spacing:1rem;
	padding-top:10rem;
}

#case ul{
	width:592rem;
	margin:70rem auto 0;
	position:relative;
	display: flex;
  justify-content: start;
  align-items: stretch;
	flex-wrap: wrap;
}

#case ul li{
	width:100%;
	background-color:#fff;
	box-sizing:border-box;
	padding:0 34rem 34rem 34rem;
	position:relative;
	margin:0 0 60rem 0;
}

#case ul li:nth-child(2n){
	margin-right:0;
}

#case ul li .category{
	width:350rem;
	height:55rem;
	margin:-25rem auto 0;
	background-color:#3a5f41;
	font-size:26rem;
	line-height:55rem;
	color:#fff;
	letter-spacing:1rem;
	text-align:center;
}

#case ul li h3{
	font-size:26rem;
	line-height:1.4;
	color:#3a5f41;
	font-weight:600;
	border-bottom:3rem solid #3a5f41;
	padding:35rem 0 15rem;
	text-align:center;
}

#case > .container > ul > li > dl{
	width:100%;
	position:relative;
	display: flex;
  justify-content: space-between;
  align-items: start;
	flex-wrap: wrap;
	margin-top:40rem;
}

#case > .container > ul > li > dl > dt {
	width:280rem;
}

#case > .container > ul > li > dl > dd {
	width:215rem;
}

#case > .container > ul > li > dl > dd > dl {
	width:215rem;
	display: flex;
  justify-content: space-between;
  align-items: start;
	flex-wrap: wrap;
	font-size:21rem;
	font-weight:500;
	margin-bottom:15rem;
	letter-spacing:1rem;
}

#case > .container > ul > li > dl > dd > dl > dt {
	width:80rem;
}

#case > .container > ul > li > dl > dd > dl > dd {
	width:135rem;
	white-space: nowrap;
}

#case > .container .reference{
	font-size:22rem;
	font-weight:500;
	color:#fff;
	background-color:#ff7b32;
	display:block;
	line-height:1.0;
	padding:7rem 15rem;
	text-align:center;
}

#case > .container .price{
	font-size:35rem;
	font-weight:600;
	color:#ff7b32;
	text-align:center;
	line-height:1.0;
	margin-top:7rem;
}

#case > .container > ul > li p{
	font-size:23rem;
	margin-top:25rem;
	line-height:1.6;
}

/*--------------------------------------
flow
----------------------------------------*/
#flow{
  width: 100%;
  margin: 0 auto;
  position: relative;
	padding-bottom:60rem;
}

#flow .catch{
	text-align:center;
	padding-top:90rem;
}

#flow .catch h2{
	display:inline-block;
	font-size:40rem;
	color:#3a5f41;
	font-weight:500;
	letter-spacing:1rem;
	line-height:1.4;
	border-bottom:3rem solid #3a5f41;
	padding:0 60rem 10rem 60rem;
}

#flow .catch p.eng{
	display:block;
	font-size:19rem;
	color:#3a5f41;
	font-weight:500;
	letter-spacing:1rem;
	padding-top:10rem;
}

#flow .container{
	width:100%;
	max-width:100%;
}

#flow #flow_inner{
	width:640rem;
	height:850rem;
	margin:20rem auto 0;
	position: relative;
	background: url(/files/user/img/jikobukken/new/shadow_sp.png?v=1765449371) no-repeat center center;
	background-size:cover;
	box-sizing:border-box;
	padding-top:50rem;
}

#flow #flow_inner dl{
	width:550rem;
	height:137rem;
	margin:0 auto;
	position: relative;
	margin-bottom:50rem;
	display: flex;
  justify-content: space-between;
  align-items: center;
	flex-wrap: wrap;
}

#flow #flow_inner dl::after {
	content: "";
	position: absolute;
	bottom: -40rem;
	left:61rem;
	width: 10rem;
	height: 10rem;
	border-top: 3rem solid #486a4e;
	border-right: 3rem solid #486a4e;
	-moz-transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

#flow #flow_inner dl:nth-child(4)::after {
	border:none;
}

#flow #flow_inner dl dt{
	width:137rem;
	position: relative;
	left:auto;
}

#flow #flow_inner dl dd{
	width:390rem;
	height:167rem;
	position: relative;
	right:auto;
	border-bottom:3rem solid #c4cfc6;
	padding-bottom:30rem;
}

#flow #flow_inner dl dd .type{
	position: relative;
	display: flex;
  justify-content: start;
  align-items: center;
	flex-wrap: wrap;
	margin-top:25rem;
}

#flow #flow_inner dl:nth-child(2) dd:nth-child(2) .type{
	position: relative;
	display: flex;
  justify-content: start;
  align-items: center;
	flex-wrap: wrap;
	margin-top:55rem;
}

#flow #flow_inner dl dd .num{
	display:inline-block;
	font-size:55rem;
	font-weight:400;
	color:#74a17c;
	position: relative;
	left:auto;
	top:auto;
	line-height:1.0;
	padding-right:20rem;
}

#flow #flow_inner dl dd span{
	display:inline-block;
	font-size:34rem;
	font-weight:600;
	color:#ff7b32;
	position: relative;
	left:auto;
	top:auto;
	line-height:1.0;
}

#flow #flow_inner dl dd ul{
	display: flex;
	gap:0;
	position: relative;
	left:auto;
	top:auto;
	margin-top:15rem;
}

#flow #flow_inner dl dd ul li{
	font-size:22rem;
	font-weight:600;
	color:#3a5f41;
	line-height:1.0;
	box-sizing:border-box;
	border-left:3rem solid #3a5f41;
	border-top:3rem solid #3a5f41;
	border-bottom:3rem solid #3a5f41;
	padding:5rem 22rem;
}

#flow #flow_inner dl dd ul li:last-child{
	border-right:3rem solid #3a5f41;
}

#flow #flow_inner dl:nth-child(3) dd:nth-child(2) ul li{
	padding:5rem 10rem;
}

/*--------------------------------------
voice
----------------------------------------*/
#voice{
  width: 594rem;
  margin: 0 auto 80rem;
  position: relative;
}

#voice a{
	display:block;
  width: 594rem;
	height:239rem;
  position: relative;
	background: url(/files/user/img/jikobukken/new/voice_sp.jpg?v=1765449371) no-repeat center center;
	background-size:cover;
	box-sizing:border-box;
	border:6rem solid #ff7b32;
	display: flex;
  justify-content: center;
  align-items: center;
	flex-wrap: wrap;
}

#voice .catch{
	text-align:center;
}

#voice .catch h2{
	display:inline-block;
	font-size:40rem;
	color:#fff;
	font-weight:500;
	letter-spacing:1rem;
	line-height:1.4;
	border-bottom:3rem solid #fff;
	padding:0 30rem 10rem 30rem;
}

#voice .catch p.eng{
	display:block;
	font-size:19rem;
	color:#fff;
	font-weight:500;
	letter-spacing:1rem;
	padding-top:10rem;
}

#voice .more{
	font-size:22rem;
	writing-mode: vertical-rl;
  text-orientation: mixed;
	color:#fff;
	font-weight:500;
	letter-spacing:1rem;
	content: "";
	position: absolute;
	right:9rem;
	top:10rem;
}

#voice a::before {
	content: "";
	position: absolute;
	top: 0;
	right:0;
	width: 60rem;
	height: 100%;
	background-color:#ff7b32;
}

#voice a::after {
	content: "";
	position: absolute;
	top: auto;
	bottom:15rem;
	right:24rem;
	width: 10rem;
	height: 10rem;
	border-top: 4rem solid #fff;
	border-right: 4rem solid #fff;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

/*--------------------------------------
column
----------------------------------------*/
#column{
  width: 100%;
	height:1346rem;
  margin: 0 auto;
  position: relative;
	background: url(/files/user/img/jikobukken/new/column_bg_sp.jpg?v=1765449361) no-repeat center center;
	background-size:cover;
	text-align:center;
	box-sizing:border-box;
	padding-top:110rem;
}

#column #owner{
	display:inline-block;
	font-size:30rem;
	color:#3a5f41;
	font-weight:500;
	text-align:center;
	background-color:#fff;
	padding:0 30rem;
}

#column .catch{
	margin-top:20rem;
}

#column .catch h2{
	width:545rem;
	margin:0 auto;
	display:block;
	font-size:40rem;
	color:#fff;
	font-weight:500;
	letter-spacing:1rem;
	line-height:1.4;
	border-bottom:3rem solid #fff;
	padding:10rem 0 20rem 0;
}

#column .catch h2 span{
	color:#f1ffa3;
}

#column .catch p.eng{
	display:block;
	font-size:19rem;
	color:#fff;
	font-weight:500;
	letter-spacing:1rem;
	padding-top:10rem;
}

#column ul{
	width:545rem;
	height:auto;
	margin:40rem auto 0;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

#column ul li{
	margin-bottom:50rem;
}

#column ul li a{
	display:block;
	width:545rem;
	height:300rem;
	position: relative;
	box-sizing:border-box;
	border:6rem solid #fff;
}

#column ul li:nth-child(1) a{
	background: url(/files/user/img/jikobukken/new/column_img1_sp.jpg?v=1765449361) no-repeat center center;
	background-size:cover;
}

#column ul li:nth-child(2) a{
	background: url(/files/user/img/jikobukken/new/column_img2_sp.jpg?v=1765449362) no-repeat center center;
	background-size:cover;
}

#column ul li a p{
	font-size:30rem;
	color:#fff;
	font-weight:500;
	letter-spacing:1rem;
	position:absolute;
	left:15rem;
	bottom:10rem;
}

#column ul li a::before {
	content: "";
	position: absolute;
	bottom: -6rem;
	right:-6rem;
	width: 78rem;
	height: 78rem;
	background-color:#2a4930;
}

#column ul li a::after {
	content: "";
	position: absolute;
	bottom: 25rem;
	right:30rem;
	width: 10rem;
	height: 10rem;
	border-top: 4rem solid #fff;
	border-right: 4rem solid #fff;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#column a.more{
	width:370rem;
	height:90rem;
	margin:40rem auto 0;
	position: relative;
	box-sizing:border-box;
	border:3rem solid #fff;
	font-size:26rem;
	letter-spacing:1rem;
	color:#fff;
	font-weight:500;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

#column a.more::after {
	content: "";
	position: absolute;
	top: calc(50% - 5rem);
	right:25rem;
	width: 10rem;
	height: 10rem;
	border-top: 4rem solid #fff;
	border-right: 4rem solid #fff;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


/*--------------------------------------
buy
----------------------------------------*/
#buy{
  width: 100%;
  margin: 0 auto;
  position: relative;
	padding-bottom:50rem;
}

#buy .catch{
	text-align:center;
	padding-top:90rem;
}

#buy .catch h2{
	display:inline-block;
	font-size:40rem;
	color:#3a5f41;
	font-weight:500;
	letter-spacing:1rem;
	line-height:1.4;
	border-bottom:3rem solid #3a5f41;
	padding:0 70rem 10rem 70rem;
}

#buy .catch p.eng{
	display:block;
	font-size:19rem;
	color:#3a5f41;
	font-weight:500;
	letter-spacing:1rem;
	padding-top:10rem;
}

#buy .container{
	width:100%;
	max-width:100%;
}

#buy ul{
	width:592rem;
	margin:60rem auto 0;
	position:relative;
	display: flex;
  justify-content: start;
  align-items: stretch;
	flex-wrap: wrap;
}

#buy ul li{
	width:100%;
	background-color:#fff;
	box-sizing:border-box;
	padding:0 30rem 30rem 30rem;
	position:relative;
	margin:0 0 50rem 0;
	box-shadow: 0 0 20rem 5rem rgba(0, 0, 0, 0.1);
}

#buy ul li:nth-child(2n){
	margin-right:0;
}

#buy ul li h3{
	font-size:26rem;
	line-height:1.4;
	color:#3a5f41;
	font-weight:600;
	border-bottom:3rem solid #3a5f41;
	padding:25rem 0 20rem;
}

#buy > .container > ul > li > dl{
	width:100%;
	position:relative;
	display: flex;
  justify-content: space-between;
  align-items: start;
	flex-wrap: wrap;
	margin-top:40rem;
}

#buy > .container > ul > li > dl > dt {
	width:280rem;
}

#buy > .container > ul > li > dl > dd {
	width:215rem;
}

#buy > .container > ul > li > dl > dd > dl {
	width:215rem;
	display: flex;
  justify-content: space-between;
  align-items: start;
	flex-wrap: wrap;
	font-size:21rem;
	font-weight:500;
	margin-bottom:15rem;
	letter-spacing:1rem;
}

#buy > .container > ul > li > dl > dd > dl > dt {
	width:80rem;
}

#buy > .container > ul > li > dl > dd > dl > dd {
	width:135rem;
	white-space: nowrap;
}

#buy > .container .reference{
	font-size:22rem;
	font-weight:500;
	color:#fff;
	background-color:#ff7b32;
	display:block;
	line-height:1.0;
	padding:7rem 15rem;
	text-align:center;
}

#buy > .container .price{
	font-size:35rem;
	font-weight:600;
	color:#ff7b32;
	text-align:center;
	line-height:1.0;
	margin-top:7rem;
}

/*--------------------------------------
company
----------------------------------------*/
#company{
  width: 100%;
  margin: 0 auto;
  position: relative;
	padding-bottom:80rem;
	background-color:#f2f1ed;
}

#company .catch{
	text-align:center;
	padding-top:100rem;
}

#company .catch h2{
	display:inline-block;
	font-size:40rem;
	color:#3a5f41;
	font-weight:500;
	letter-spacing:1rem;
	line-height:1.4;
	border-bottom:3rem solid #3a5f41;
	padding:0 100rem 10rem 100rem;
}

#company .catch p.eng{
	display:block;
	font-size:19rem;
	color:#3a5f41;
	font-weight:500;
	letter-spacing:1rem;
	padding-top:10rem;
}

.company_info {
  width: 590rem;
  margin: 60rem auto 0;
  display: flex;
	flex-direction: column;
  align-items: stretch;
	gap: 0;
  box-sizing: border-box;
}

.company_info .block {
	order: 2;
	width: 100%;
	margin-top:60rem;
  flex: 1 1 50%;
  display: flex;
  flex-direction: column;
  justify-content: start;
	position:relative;
}

.company_info .block dl {
	width:100%;
	display: flex;
  justify-content: start;
  align-items: start;
	flex-wrap: wrap;
	font-size:23rem;
	line-height:1.0;
	color:#3a5f41;
	position:relative;
	box-sizing:border-box;
	border-top:3rem solid #c1cabf;
	letter-spacing:1rem;
}

.company_info .block dl dt{
	width:130rem;
	position:relative;
	box-sizing:border-box;
	padding:20rem 0;
	border-bottom:3rem solid #c1cabf;
}

.company_info .block dl dt::after {
	content: "：";
	position: absolute;
	top: 20rem;
	right:12rem;
}

.company_info .block dl dd{
	width:460rem;
	display: block;
	box-sizing:border-box;
	padding:20rem 0;
	border-bottom:3rem solid #c1cabf;
}

.company_info .company_img {
	order: 1;
	width: 100%;
	max-width: 590rem;
	margin:0 auto;
  flex: 1 1 50%;
  display: flex;
  align-items: start;
  justify-content: center;
}

/*--------------------------------------
company message
----------------------------------------*/
#company .message{
	display:block;
  width: 590rem;
	height:auto;
	background-color:#74a17c;
	margin:60rem auto 0;
	font-size:22rem;
	line-height:1.6;
	color:#fff;
	font-weight:400;
	position:relative;
	box-sizing:border-box;
	padding: 25rem;
}

#company .message::before {
  content: "";
  pointer-events: none;
  position: absolute;
  top: 10rem;
  left: 10rem;
  right: 10rem;
  bottom: 10rem;
  border: 1rem solid #fff;
  box-sizing: border-box;
}

#company .message img.icon{
	width:95rem;
	float:left;
	margin:5rem 5rem 0 5rem;
}

/*--------------------------------------
company president
----------------------------------------*/
#company #president {
	width: 592rem;
	margin: 40rem auto 0;
  display: flex;
  align-items: stretch;
	flex-direction: column;
	gap: 0;
	padding:30rem 30rem 0 30rem;
  box-sizing: border-box;
	background-color:#fff;
}

#company #president #president_img {
	width: 100%;
	max-width: 350rem;
	margin:0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 auto;
	order: 2;
}

#company #president #president_img img {
  max-width: 100%;
  height: auto;
  display: block;
}

#company #president #president_message {
	order: 1;
	width: 100%;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#company #president #president_message p{
	font-size:23rem;
	line-height:1.8;
	padding-bottom:20rem;
}

#company #president #president_message .name{
	color:#3a5f41;
	font-size:24rem;
	font-weight:600;
	border-bottom:3rem solid #3a5f41;
	padding-bottom:10rem;
	margin-bottom:10rem;
}

#company #president #president_message .name span{
	font-size:32rem;
}

@-moz-document url-prefix() {
	rt {
		position: relative;
		top: 0.3em;
	}
}

/*--------------------------------------
area
----------------------------------------*/
#area{
  width: 100%;
	height:1260rem;
  margin: 0 auto;
  position: relative;
	background: url(/files/user/img/jikobukken/new/area_sp.png?v=1765449371) no-repeat center center #3a5f41;
	background-size:cover;
}

#area h2{
	font-size:40rem;
	color:#fff;
	font-weight:500;
	letter-spacing:1rem;
	line-height:1.4;
	padding-top:80rem;
	padding-left:40rem;
}

#area p.eng{
	display:block;
	font-size:19rem;
	color:#fff;
	font-weight:500;
	letter-spacing:1rem;
	padding-top:35rem;
	padding-left:40rem;
}

#area .support{
	font-size:41rem;
	color:#f2ffa3;
	font-weight:500;
	letter-spacing:1rem;
	line-height:1.4;
	padding-top:50rem;
	padding-left:40rem;
}

#area .support span{
	font-size:22rem;
}

#area .partial{
	font-size:26rem;
	color:#fff;
	font-weight:500;
	letter-spacing:1rem;
	line-height:1.4;
	padding-top:20rem;
	padding-left:40rem;
}

#area .response{
	font-size:26rem;
	color:#ff8440;
	font-weight:500;
	letter-spacing:1rem;
	line-height:1.4;
	padding-top:20rem;
	padding-left:40rem;
}

/*--------------------------------------
sns
----------------------------------------*/
#sns{
  width: 100%;
  margin: 0 auto;
  position: relative;
	padding:40rem 0 80rem;
}

#sns ul{
  margin: 0 auto;
  display: flex;
	justify-content: center;
  gap: 30rem;
}

#sns ul li{
	width:68rem;
}

/*--------------------------------------
form
----------------------------------------*/
#form{
  width: 100%;
  margin: 0 auto;
  position: relative;
	padding:0 0 70rem;
	background-color:#f2f1ed;
	font-size: 23rem;
}

#form .arrow{
	border-top: 25rem solid #fff;
	bottom: auto;
	top:0;
}

#form .form_title{
	font-size: 40rem;
	font-weight: bold;
	text-align: center;
	padding-top:70rem;
	margin-bottom:50rem;
}

#form .form_area{
	padding: 40rem 40rem;
}

.form_table th,
.form_table td {
	display:block;
	border-bottom: 0;
	padding: 15rem 5rem;
}
.form_table td {
	padding-top: 0;
}
.form_table tr:nth-child(2n){
	background:#fff;
}

.privacy_frame{
	margin-top: 40rem;
	margin-bottom: 30rem;
}

.pp-text{
	margin-bottom: 15rem;
}

.c-button__outer{
	margin-top: 40rem;
}

/*--------------------------------------
service
----------------------------------------*/
#service{
  width: 100%;
  margin: 0 auto;
  position: relative;
	padding-bottom:150rem;
}

#service .catch{
	text-align:center;
	padding-top:100rem;
}

#service .catch h2{
	display:inline-block;
	font-size:40rem;
	color:#3a5f41;
	font-weight:500;
	letter-spacing:1rem;
	line-height:1.4;
	border-bottom:3rem solid #3a5f41;
	padding:0 20rem 10rem 20rem;
}

#service .catch p.eng{
	display:block;
	font-size:19rem;
	color:#3a5f41;
	font-weight:500;
	letter-spacing:1rem;
	padding-top:10rem;
}

#service ul {
  width: 594rem;
	display: flex;
  justify-content: space-between;
  align-items: start;
	flex-wrap: wrap;
	margin:60rem auto 0;
}

#service ul li{
	margin-bottom:20rem;
	width:285rem;
	height:90rem;
	overflow:hidden;
}

#service ul li a{
	width:100%;
	height:100%;
	background-color:#3a5f41;
	display: flex;
  justify-content: start;
  align-items: center;
	flex-wrap: wrap;
	position:relative;
	box-sizing:border-box;
}

#service ul li a p{
	font-size:22rem;
	line-height:1.4;
	color:#fff;
	font-weight:500;
	padding-left:105rem;
}

#service ul li a .service_img{
	width:90rem;
	height:90rem;
	position:absolute;
	left:0;
}

#service ul li a::after {
	content: "";
	position: absolute;
	top: calc(50% - 5rem);
	right:20rem;
	width: 12rem;
	height: 12rem;
	border-top: 4rem solid #fff;
	border-right: 4rem solid #fff;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

/*--------------------------------------
footer
----------------------------------------*/
#btn_top{
	width:96rem;
	height:96rem;
	position:absolute;
	right:25rem;
	top:-130rem;
	z-index:100;
}

#btn_top a{
	display:block;
	width:96rem;
	height:96rem;
	background-color:#ff7b32;
	border-radius:50%;
	font-size:22rem;
	font-weight:500;
  display: flex;
  align-items: center;
  justify-content: center;
	color:#fff;
}

#footer_contents_jiko {
	width: 100%;
	margin: 0 auto;
	position: relative;
	background-color:#3a5f41;
	line-height: 1.8;
}

#footer_contents_jiko #footer_inner{
  width: 100%;
	max-width:100%;
	margin:0 auto;
	height:auto;
  position: relative;
	padding:60rem 0 100rem;
}

#footer_contents_jiko #footer_logo{
	width:520rem;
	height:auto;
	position:relative;
	left:0;
	top:0;
	margin:0 auto;
}

#footer_contents_jiko #footer_logo a{
	display:block;
	width:100%;
	height:100rem;
	background: url(/files/user/img/jikobukken/new/icon.png?v=1765449364) no-repeat center left;
	background-size: auto 100%;
	box-sizing:border-box;
	padding-left:110rem;
}

#footer_contents_jiko #footer_logo a p{
	font-size:20rem;
	color:#fff;
	font-weight:500;
	line-height:1.0;
	padding-top:12rem;
}

#footer_contents_jiko #footer_logo a span{
	display:block;
	font-size:40rem;
	color:#fff;
	font-weight:500;
	line-height:1.0;
	padding-top:9rem;
}

#footer_contents_jiko #footer_logo .phone{
	font-size:28rem;
	color:#fff;
	font-weight:500;
	padding-left:0;
	text-align:center;
	letter-spacing:1rem;
}

#footer_contents_jiko #footer_logo .phone span{
	font-size:20rem;
}

#footer_contents_jiko ul.footer_navi{
	width:auto;
  margin: 80rem auto 0;
  display: flex;
	flex-wrap: wrap;
	justify-content: center;
  gap: 10rem 50rem;
	position:relative;
	right:0;
	top:0;
}

#footer_contents_jiko ul.footer_navi li a{
	font-size:22rem;
	color:#fff;
	font-weight:500;
	letter-spacing:2rem;
}

#footer_contents_jiko ul.footer_sns{
  margin: 50rem auto 0;
  display: flex;
	justify-content: center;
  gap: 25rem;
	position:relative;
	right:0;
	top:0;
}

#footer_contents_jiko ul.footer_sns li a{
	display:block;
	width:68rem;
}

#footer_contents_jiko #copyright{
	font-size:13rem;
	color:#fff;
	font-weight:400;
	letter-spacing:1rem;
	position:relative;
	right:0;
	top:0;
	text-align:center;
	padding-top:80rem;
}