/* CSS Document */
@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;600;900&display=swap');
/******* general *******/
html, body, div, span, applet, object, iframe,h1,h2,h3,h4,h5,h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike,  sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	line-height: 160%;
	font-family: 'Noto Sans JP', sans-serif;
	color:#301910;
}
strong{
	font-weight:bolder;
}
.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto{
	padding-right:0px;
	padding-left:0px;
}

img {
	vertical-align: bottom;
	max-width: 100%;
	z-index:1;
}

a{
	color:#047ca5;
	text-decoration: none;
}

a:hover {
	transition: all 0.5s;
	opacity:0.6;
	color:inherit;
}

a img:hover{
	transition: all 0.3s;
	filter: brightness(110%);
}

a:focus,
button:focus {
	outline: none;
}

html{
	line-height: 1;
	font-size: 16px;
	font-family: kozuka-gothic-pro, sans-serif;font-weight: 400;font-style: normal;
}

p{
	font-size:1.125rem;
}

h1{
	font-size:2.375rem;
}

h2{
	font-size:2.375rem;
}

h3{
	font-size:2.375rem;
}

h4{
	font-size:1.75rem;
}
h5{
	font-size:1.35rem;
}

h6{
	font-size:1.1rem;
}

i{
	font-size:1.75rem;
}

hr{
	height:2px !important;
	opacity:1 !important;
}

.text-38{
	font-size:3.625rem;

}
.text-30{
	font-size:3rem;
}

.text-24{
	font-size:2.4rem;
}

.text-1{
	font-size:1rem;
}

.text-1 p{
	font-size:1rem;
}

.text-09{
	font-size:0.90rem;
}

.fw-ex-bold{
	font-weight:900;
}

@media screen and (min-width:1600px) {
	html{
		font-size:18px !important;
	}
	.row{
		max-width:1280px !important
	}
	
}

@media screen and (min-width:768px) and ( max-width:992px) {
	html{
		font-size: 14px !important;
	}
	p{
		letter-spacing:-0.5px;
	}
}

@media screen and ( max-width: 767px ) {
	p{
		font-size:1rem;
	}

	h1{
		font-size:1.125rem;
	}

	h2{
		font-size:1.375rem;
	}

	h3{
		font-size:2.375rem;
	}

	h4{
		font-size:1.125rem;
	}
	
	h5{
		font-size:1rem;
	}
	
	.text-38{
		font-size:1.75rem;
	}
	
	.text-30{
		font-size:1.5rem;
	}
	
	.text-24{
		font-size:1.375rem;
	}
	.text-1{
		font-size:0.875rem;
	}
	.text-1 p{
		font-size:0.875rem;
	}
}

@media screen and ( max-width: 340px ){
	html{
		font-size:14px !important;
	}
}


/******* テキスト色*******/
.text-orange{
	color:#ff8401;
}

.text-grey{
	color:#9babb2;
}

.text-yellow{
	color:#ffc00d;
}

.text-blue{
	color:#7dc1ff;
}


/******* 背景色*******/
.bg-grey{
	background:#f7f5f0;
}

.bg-orange{
	background-color:#ff8401;
}

.bg-yellow{
	background-color:#fff4e2;
}

.bg-yellow2{
	background-color:#efc354;
}

.bg-blue{
	background-color:#edf5f9;
}

.bg-brown{
	background-color:#3a3431;
}

.bg-d-brown{
	background-color:#30180f;
}

.bg-grd1{
	-moz-box-shadow: 10px 10px 0px 0px rgba(127,118,113,1);
	-webkit-box-shadow: 10px 10px 0px 0px rgba(127,118,113,1);
	-ms-box-shadow: 10px 10px 0px 0px rgba(127,118,113,1);
	box-shadow: 10px 10px 0px 0px rgba(127,118,113,1);
}

.bg-grd2{
	-moz-box-shadow: 10px 10px 0px 0px rgba(173,158,153,1);
	-webkit-box-shadow: 10px 10px 0px 0px rgba(173,158,153,1);
	-ms-box-shadow: 10px 10px 0px 0px rgba(173,158,153,1);
	box-shadow: 10px 10px 0px 0px rgba(173,158,153,1);
}

.bg-grd3{
	-moz-box-shadow: 5px 5px 0px 0px #ffc00d;
	-webkit-box-shadow: 5px 5px 0px 0px #ffc00d;
	-ms-box-shadow: 5px 5px 0px 0px #ffc00d;
	box-shadow: 5px 5px 0px 0px #ffc00d;
}

.bg-grd4{
	-moz-box-shadow: 5px 5px 0px 0px #afd8f2;
	-webkit-box-shadow: 5px 5px 0px 0px #afd8f2;
	-ms-box-shadow: 5px 5px 0px 0px #afd8f2;
	box-shadow: 5px 5px 0px 0px #afd8f2;
}

.bg-grd5{
	-moz-box-shadow: 5px 5px 0px 0px #ff8400;
	-webkit-box-shadow: 5px 5px 0px 0px #ff8400;
	-ms-box-shadow: 5px 5px 0px 0px #ff8400;
	box-shadow: 5px 5px 0px 0px #ff8400;
}

.bg-lattice{
	background-image:
		repeating-linear-gradient(
			90deg,
			#e7e0d2 ,
			#e7e0d2 1px,
			transparent 1px,
			transparent 24px
		),
		repeating-linear-gradient(
			0deg,
			#e7e0d2 ,
  			#e7e0d2 1px,
			#fff4e2 1px,
			#fff4e2 24px
		);
}

.bg-orange-grd{
	background-image:url(/ribicon-lp/wp-content/uploads/2022/10/bg_orange_grd.svg);
	background-repeat:no-repeat;
	background-size:cover;
}

.bg-about{
	background-image:url(/ribicon-lp/wp-content/uploads/2022/10/about_img1.png);
	background-repeat:no-repeat;
	background-size:240px auto;
	background-position:right bottom;
}

.bg-slash,.bg-slash2{
	background-size:105% 14vw;
	background-position:center bottom;
	background-repeat:no-repeat;
}

.bg-slash{
	background-image:url(/ribicon-lp/wp-content/uploads/2022/10/triangle2.svg);

}

.bg-slash2{
	background-image:url(/ribicon-lp/wp-content/uploads/2022/10/triangle3.svg);
}

.bg-icon{
	background-image:url(/ribicon-lp/wp-content/uploads/2022/07/icon1.svg);
	background-position:right 0px bottom 0%;
	background-repeat:no-repeat;
	background-size:100px;
}

.check_icon{
	font-size:3.5rem;
}

.check_icon:after {
	content: url(/ribicon-lp/wp-content/uploads/2022/10/check_icon.svg);
	position:absolute;
	width: 30px;
	bottom:40px;
	left:0px;
}

.bg-voice{
	background-image:url(/ribicon-lp/wp-content/uploads/2022/10/bg_voice1.svg);
	background-repeat:no-repeat;
	background-size:calc(50% + 360px) 100%;
}

.bg-voice2{
	background-image:url(/ribicon-lp/wp-content/uploads/2022/10/bg_voice2.svg);
	background-repeat:no-repeat;
	background-size:calc(50% + 360px) 100%;
	background-position:right;
}

.bg-map{
	background-image:url(/ribicon-lp/wp-content/uploads/2022/10/bg_map1.svg);
	background-repeat:no-repeat;
	background-size:cover;
}


@media screen and ( max-width: 767px ){
	.bg-about{
		background-size:135px auto;
		background-position:center bottom;
	}
	.check_icon{
	font-size:3rem;
	}


	.check_icon:after {
		bottom:30px;
		left:-5px;
	}
	.bg-voice{
		background-image:url(/ribicon-lp/wp-content/uploads/2022/10/bg_voice_sp1.svg) !important;
		background-size:100% 80%;
		background-position:bottom;
		border-radius:0px 0px 75px 0px;
	}


	.bg-voice2{
		background-image:url(/ribicon-lp/wp-content/uploads/2022/10/bg_voice_sp1.svg) !important;
		background-size:100% 80%;
		background-position:bottom;
		border-radius:0px 0px 0px 75px;
	}
}

/******* bootstrapその他追加 *******/
.rounded-4{
	border-radius:15px!important;
}

.rounded-bottom-4{
	border-radius:0px 0px 15px 15px!important;	
}

.rounded-5{
	border-radius:30px!important;
}

.rounded-5-top{
	border-radius:30px 30px 0px 0px!important;
}

.rounded-6{
	border-radius:45px!important;
}
.mt-n-27p{
	margin-top:-2.7px !important;
}

.mt-n-3{
	margin-top:-1rem !important;
}

.mt-n-45{
	margin-top:-2rem !important;
}
.mt-n-5{
	margin-top:-3rem !important;
}

.mt-n-6{
	margin-top:-6rem !important;
}

.ms-n-3{
	margin-left:-1rem !important;
}

.ms-n-4{
	margin-left:-1.5rem !important;
}

.ms-n-45{
	margin-left:-2rem !important;
}

.me-n-3{
	margin-right:-1rem !important;
}

.text-decoration-underline{
	text-underline-offset:7.5px;
	text-decoration-thickness: 2px !important;
}

.underline-orange{
	text-decoration: underline #ff8401;
	text-underline-offset:3.5px;
}

.border-orange{
	border:solid 2px #ff8401;
}

.border-md-bottom-none{
	border:none !important;
}

.border-bottom-orange{
	border-bottom:solid 2px #ff8401;
}
.border-bottom-yellow{
	border-bottom:solid 2px #fff4e2;
}

.text-shadow{
	text-shadow: 1px 1px 5px white,1px 1px 5px white;
}

.row{
	max-width:1040px;
	margin:auto;
	padding:0px;
}


.z-1{
	z-index:1;
}

.z-2{
	z-index:2;
}

.z-3{
	z-index:3;
}

.z-4{
	z-index:4;
}

.h-70{
	height:70px;
}

.shadow-ex{
	box-shadow:0px 0px 4px grey;
}

@media screen and ( min-width:768px ){
	.mt-md-n-5{
		margin-top:-3rem !important;
	}
	.ms-md-n-5{
		margin-left:-3rem !important;
	}
	.border-md-end{
		border-right:2px solid #30180f!important;
	}
}


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

.border-bottom{
	border-bottom:solid 2px #301910 !important;
}
	
}

/******* その他追加 *******/
.slash{
	bottom:0;
	width:100%;
	left:0px;
	z-index:0;
}

.fukidashi-rotate{
	transform: rotateX(180deg) scale(-1, 1);
	left:30px;
	bottom:-28px;
}

.max-720{
	max-width:720px;
	margin:auto;
}

.step_icon{
	left:0px;
	top:10px;
}

.ls-md-1{
	letter-spacing:-1px;
}

.iframe{
	max-width:100% !important
}

.h2-icon{
	width:4rem;
	max-width:10vw
}

@media screen and ( max-width: 767px ) {
	.ls-md-1{
	letter-spacing:-1px;
	}
	.fukidashi-rotate{
		left:30px;
		bottom:-28px;
	}
	.step_icon{
		left:-10px;
		top:-5px;
	}
}



/******* header style *******/

.container-fluid{
	padding-left:1.5rem;
	padding-right:1.5rem;
}
.header .container-fluid .row{
	height:90px;
}
.offcanvas-collapse {
    position: fixed;
    top: 0; /* Height of navbar */
    bottom: 0;
    left: 100%;
	width: 100%;
	padding-top: 1rem;
    padding-right: 1rem;
    padding-left: 1rem;
    overflow-y: auto;
    visibility: hidden;
    background-color: rgba(0, 0, 0, 0.9);
    transition-timing-function: ease-in-out;
    transition-duration: .3s;
    transition-property: left, visibility;
}
.offcanvas-collapse.open {
    left: 0;
	visibility: visible;
}
.navbar{

}
.navbar-light .navbar-nav .nav-link{
	color:#301910;
}

.navbar-nav li{
	display:flex;
	align-items:center;
}

.header_logo{
	height:55px;
}
.header_icon{
	height:30px;
}
.breadcrumb{
	margin-bottom:0px !important;
}

@media (max-width:991px){
	.header{
		background-color:rgba(240,244,248,0.95);
	}
	.fixed-top{
		position:relative;
	}
}


@media (min-width: 992px) {
	.navbar-toggler {
		display: none;
	}
	.offcanvas-collapse {
		position: relative;
		visibility: visible;
		background-color: transparent;
		top: inherit;
		bottom: inherit;
		left: inherit;
		padding-top: 0;
	}
	main{
		overflow:hidden !important;
		margin-top:102px;
	}

	.customize-support .header { 
		margin-top: 32px !important;
	}

}

@media(max-width:1320px){
	.bg-orange-icon,.bg-orange-icon2{
		display:none !important;
	}
}

@media(min-width:1321px){
	.bg-orange-icon{
		position: absolute;
		top: 80px;
		right: 50px;
	}
	.bg-orange-icon2{
		position: absolute;
		top: 130px;
		right: 30px;
	}
}

/******* トップページ *******/
.home-img{
	width:100vw;
	background-size: cover;
	background-repeat: no-repeat;
	background-position:top center;
	background-image:url(/ribicon-lp/wp-content/uploads/2022/10/ribicon_home.jpg);
}

@media (min-width: 992px) {
	.home-img {
		height:calc(100vh - 102px);
		background-position:center bottom !important;
	}

}

.line-button{
	max-width:30rem;
	width:100%;
	min-width:20vw
}

/*** cf-7 ****/
.wpcf7-form .wpcf7-text,.wpcf7-form .wpcf7-textarea{
	width:100%;
	border:none;
	background-color:#f7f5f0;
}
.wpcf7-form .wpcf7-text{
	height:45px;
}

.required{
	color:white;
	background-color: #ff8401;
	font-size: 0.75rem;
	border-radius: 0.3rem!important;
	padding:0.1rem 0.65rem!important;
    margin-left: 1rem!important;
}

.wpcf7-list-item{
	margin-left:0px !important;
}

input.wpcf7-submit{
	color:white;
	border:solid 2px #30180f;
	width:260px;
	padding:16px 0px;
	background-color:#30180f;
	max-width:100%;
	border-radius: 45px!important;
}
input.wpcf7-submit:hover{
	background-color:white;
	transition:0.3s;
	color:#30180f;
}
.wpcf7-list-item{
	margin-left:0px !important;
}
.wpcf7-spinner{
	display:none !important;
}