
/*@import url('https://fonts.googleapis.com/css2?family=Kiwi+Maru:wght@300;400;500&display=swap');*/
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@300;500&family=M+PLUS+Rounded+1c:wght@100;300;400;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500&display=swap');

html, body {
	font-size: 15px;
	scroll-behavior: auto;
}
body{
    overflow-x: hidden;
}

footer {
	padding-bottom: 10px;
}

* {
	box-sizing: border-box;
	font-family: 'Noto Sans JP', sans-serif;
	word-break : break-all;
	font-size: 14px;
}
h1,
h2,
h3,
h4 {
	font-family: 'M PLUS Rounded 1c', sans-serif;
	word-break : break-all;
}
p {
	font-size: 1rem;
	color: #000;
    word-break: break-word;
}
img {
	max-width: 100%;
}
/*a {
	color: #009245;
}
a:hover {
	color: #006549;
}
*/
nav a {
	padding: 0;
	font-size: 12px;
}
footer nav:after {
	display: none !important;
}
a.btn {
	border: 2px solid #009245;
	border-radius: 0;
	background: #fff;
	-webkit-box-shadow: 4px 4px 0 #009245;
	box-shadow: 4px 4px 0 #009245;
	color: #009245;
	padding: 6px 16px;
}
a.btn:hover {
  -webkit-box-shadow: -4px -4px 0 #009245;
  box-shadow: -4px -4px 0 #009245;
}
.serif {
	font-family: serif !important;
	font-weight: bold;
	letter-spacing: 2px;
	color: #000;
}
.sp_br {
	display: none;
}

h4 {
	font-size: 1.4rem;
	margin-bottom: 20px;
}
h3 {
	margin-bottom: 25px;
}

.sp_br {
	display: none;
}


.clearfix:after {
	display: block;
	content: "";
	clear: both;
}

/* ヘッダ */
.nav_container_sp {
	display: none;
}
.head_logo_container {
	width: 100%;
	height: 107px;
	background: rgba(255,255,255,.8);
	padding-top: 50px;
	position: fixed;
	z-index: 1000;
}
.head_logo_inner {
	width: 1200px;
	margin: 0 auto;
}
.head_logo_inner h1 {
	float: left;
	width: 210px;
	max-width: 20%;
	padding-right: 30px;
}
.nav_container {
	float: left;
	width: 960px;
	max-width: 80%;
}
.nav_container nav {
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-justify-content: space-between; /* Safari */
	justify-content: space-between;
}
.nav_container nav a {
	color: #000 !important;
	padding-top: 35px;
	line-height: 1;
	font-weight: 500;
	margin-left: auto;
}
.nav_container nav a:hover {
	color: #44b036 !important;
}
.nav_container nav a.head_insta {
	width: 40px;
	padding: 18px 0 0;
}

/* ワイド画面用  */
@media screen and (min-width: 1200px) {

.head_logo_container {
    max-width: 1200px;
    left: calc(50% - 600px);
}



}


/* 共通 */
main {
	padding-top: 180px;
}
.content_inner {
	width: 1200px;
	max-width: 100%;
	margin: 0 auto;
}
.full_container {
	position: relative;
}


/* トップスライダー */
.top_slide {
	position: relative;
}
.top_header {
	overflow-x: scroll;
	position: relative;
	-ms-overflow-style: none;    /* IE, Edge 対応 */
	scrollbar-width: none;       /* Firefox 対応 */
	position: relative;
}
.top_header::-webkit-scrollbar {  /* Chrome, Safari 対応 */
	display:none;
}
.top_header img {
	max-width: inherit !important;
}
.top_slide .bike {
	position: absolute;
	bottom: 0;
	left: 30%;
}
.slide_btns {
	width: 100%;
	height: 50px;
	position: relative;
}
@media screen and (max-width: 768px) {
    .slide_btns {
        height: 20px;
        margin-top: -8px;
    }
}
#prev {
	position: absolute;
	left: calc(50% - 600px);
	z-index: 10;
	display: block;
	margin-left: 0;
	cursor: pointer;
	bottom: 0px;
}
#next {
	position: absolute;
	right: calc(50% - 600px);
	z-index: 10;
	display: block;
	margin-left: 0;
	cursor: pointer;
	bottom: 0px;
}
h2 {
	font-size: 2rem;
	line-height: 2.5;
}
h2 .yellow_marker {
	background:linear-gradient(transparent 60%, #FFEC05 60%);
	font-size: inherit;
	font-family: 'M PLUS Rounded 1c', sans-serif !important;
}

h5 {
	padding-bottom: 3px;
	font-size: 12px;
	border-bottom: 2px solid #111;
	display: inline-block;
	font-weight: 500;
}
#service_sp {
	display: none;
}



/* トップコンテンツ */
#ourproject,
#example,
#service,
#about {
	padding: 100px 0;
	position: relative;
	max-width: 1200px;
	margin: 0 auto;
}
#service {
	max-width: 100%;
}

.service_inner {
	max-width: 1200px;
	margin: 0 auto;
	width: 100%;
	margin: 0 auto;
	position: relative;
}


.op_left {
	width: 20%;
	margin: 0 50px 0 25%;
	float: left;
}
.op_left img {
	padding-top: 20px;
}
.op_right {
	width: 27%;
	margin: 0 23% 0 0;
	float: left;
}
.op_right h2 {
	margin-left: -30px;
	padding-right: 30px;
}
.illust_01 {
	overflow: hidden;
	display: block;
	position: absolute;
	bottom: 100px;
	left: 5%;
	z-index: 10;
}
.illust_02 {
	overflow: hidden;
	display: block;
	position: absolute;
	top: -120px;
	left: calc(100% - 350px);
}
.illust_03 {
	overflow: hidden;
	display: block;
	position: absolute;
	top: 170px;
	left: 25%;
	width: 80px;
}
.illust_03_2,
.illust_11_2 {
	display: none;
}
.example_pc p.other_design {
	font-size: 1.3rem;
	line-height: 1.7;
	padding: 0 0 30px;
	text-align: center;
}

/* サンプルページ  */
.example_page {
	max-width: 1024px;
	margin: 0 auto;
	padding: 0 0 100px !important;
	display: block !important;
}
.example_page .example_wrap {
	width: 98%;
	border-top: 1px dashed #666;
	padding-top: 110px;
	padding-bottom: 40px;
}
.example_page .title_block {
	width: 96% !important;
	margin: 0 auto 50px;
}
.example_page .for_contact {
	width: 360px;
	margin: 70px auto 0;
}
#example_12 {
	border-bottom: 1px dashed #666;
}
.example_list {
	list-style: none;
	padding: 0 10px;
}
.example_list li {
	text-align: left;
	margin-bottom: 10px;
}
.example_list a {
	color: #333;
	font-weight: bold;
	font-size: .8rem;
	padding-bottom: 3px;
	border-bottom: solid 1px #000;
}
.example_page .title_block > p {
	font-size: .7rem !important;
	line-height: 1.1;
	text-indent: 10px;
	margin-bottom: .2rem;
}
.example_page p.other_design {
	font-size: .8rem !important;
	line-height: 1.6 !important;
	text-align: center !important;
	padding: 15px 0;
}

@media screen and (min-width: 1024px) {

.example_page .title_block {
	text-align: center;
}

}

/* プラポリ */
.lower_page {
	background: #f4f4f4;
	padding: 200px 0;
}
.lower_container {
	width: 800px;
	padding: 50px 100px 100px;
	background: #fff;
	margin: 0 auto;
	position: relative;
}
.lower_header_title {
	text-align: center;
	margin-bottom: ;
}
.lower_header_title img {
	width: 350px;
}
.lower_header_title_sp {
	display: none;
}
.lower_page * {
	font-family: 'Noto Sans JP', sans-serif;
}
#privacy h2 {
	margin-bottom: 50px;
}
#privacy h3,
#privacy p {
	font-size: 1.1rem;
}
#privacy h3 {
	margin-bottom: 5px;
}
#privacy p {
	margin-bottom: 10px;
}
#privacy ul {
	margin-left: 20px;
	margin-bottom: 10px;
}
#privacy li {
	font-size: 1.1rem;
}
#company th {
	font-weight: normal;
	padding: 2px 0;
}
#company td {
	padding: 2px 15px;
}
#company table {
	margin-bottom: 20px;
}
#company .no_margin {
	margin-bottom: 0px !important;
}
/*#company .lower_header_title img {
	width: 200px;
}
*/
#company h3 {
	font-weight: bold;
	font-size: 1.4rem;
	text-align: center;
	padding-top: 40px;
}

/* 問い合わせ */
#contact input[type="text"],
#contact textarea {
	width: 350px;
	height: 50px;
	border: 1px solid #98A6B5;
	border-radius: 3px;
}
#contact textarea {
	height: 230px;
	resize: none;
}
#contact input[type="checkbox"] {
	width: 30px;
	height: 30px;
}
#contact form {
	width: 600px;
	padding: 40px;
}
#contact form:after {
	content: "";
	display: block;
	clear: both;
}
#contact .contact_label {
	clear: both;
	float: left;
	width: 160px;
}
#contact .contact_input {
	float: right;
	width: 360px;
	margin-bottom: 40px;
}
#contact .input_confirm {
	clear: both;
}
#contact .tag{
	display: block;
	margin: 0 auto;
	width: 40px;
	text-align: center;
	border: solid 1px #FD5656;
	color: #FD5656;
	font-size: .7rem;
	border-radius: 6px;
}
#contact .contact_label label {
	letter-spacing: 2px;
	font-weight: bold;
	display: block;
	text-align: center;
	padding-top: 16px;
}
#contact .contact_input p {
	margin-bottom: 0 !important;
}
#contact .contact_input_left {
	width: 80px;
	float: left;
	text-align: right;
	padding-right: 10px;
	line-height: 50px;
}
#contact .contact_input_right {
	width: 250px;
	float: left;
	margin-bottom: 18px;
}
#contact .contact_input_right input {
	width: 270px;
}
#contact .input_confirm {
	text-align: center;
}
#contact .input_confirm button {
	border: none;
	width: 272px;
	line-height: 48px;
	color: #fff;
	background: #79C4F2;
}
#contact .contact_privacy a {
	color: #000;
	font-weight: bold;
	text-decoration: underline;
}
#contact .contact_illust_01 {
	position: absolute;
	top: 20px;
	left: 20px;
}
#contact .contact_illust_02 {
	position: absolute;
	top: 60px;
	right: 20px;
}
#contact .contact_illust_03 {
	position: absolute;
	top: 600px;
	left: 10px;
}
#contact .contact_illust_04 {
	position: absolute;
	bottom: 100px;
	right: 0;
}
#contact .contact_illust_04 img {
	width: 90%;
}
#contact .lower_header_title img {
	/*width: 260px;*/
	margin-bottom: 50px;
}
#contact .contact_note {
	width: 800px;
	background: #fff;
	padding: 0 20px 20px;
	margin: 0 auto;
	font-size: .9rem;
	color: #333;
}
#contact input[readonly],
#contact textarea[readonly] {
	background: #eee;
}
.contact_back {
	display: block;
	width: 200px;
	margin: 30px auto 0;
	padding: 15px 0;
	text-align: center;
	background: #bbb;
	color: #fff !important;
}
.contact_finished {
	padding: 100px 0;
	text-align: center;
}


@media screen and (max-width: 768px) {
.lower_page {
	background: none;
	padding: 30px 0;
}
.lower_container {
	width: 100%;
	padding: 40px 30px;
}
.lower_header_title {
	display: none;
}
.lower_header_title_sp {
	display: block;
	text-align: center;
}
.lower_page .lower_header_title_sp {
	width: 70%;
	max-width: 350px;
	margin: 0 auto 20px !important;
}
.lower_page p,
.lower_page ul {
	margin-bottom: 25px !important;
}
.lower_page h3,
.lower_page li {
	font-size: .9rem !important;
}
#company .no_margin {
	margin-bottom: 0px !important;
}
#company h3 {
	font-weight: bold;
	font-size: 1.5rem !important;
	text-align: center;
	padding-top: 40px;
}
#company .lower_header_title_sp img {
	width: 170px;
}


}






/* レスポンシブ */
@media screen and (min-width: 1000px) {
.illust_04 {
	overflow: hidden;
	display: block;
	position: absolute;
    top: 30%;
    right: 0;
}
.illust_05 {
	overflow: hidden;
	display: block;
	position: absolute;
    top: 42%;
    left: 0;
}
.illust_06 {
	overflow: hidden;
	display: block;
	position: absolute;
	top: 78%;
	right: 0;

}
}
@media screen and (min-width: 1550px) {
    .illust_04 {
       
        top: 30%;
        right: -20px;
        transform: translateX(100%);
    }
    .illust_05 {
       
        top: 42%;
        left: -20px;
        transform: translateX(-100%);
    }
    .illust_06 {
       
        top: 78%;
        right: -20px;
        transform: translateX(100%);
    
    }
    }
    

@media screen and (max-width: 1100px) {
.illust_04,
.illust_05,
.illust_06 {
	display: none;
}
}
.illust_07 {
	overflow: hidden;
	display: block;
	position: absolute;
    top: 0;
    width: 255px;
    right: 0;
    transform: translateY(-100%);
}
.illust_08 {
	overflow: hidden;
	display: block;
	position: absolute;
    top: 86px;
    left: 25%;
    width: 110px;
}
.illust_09 {
	overflow: hidden;
	display: block;
	position: absolute;
	top: 580px;
	/* right: 20%; */
	width: 180px;
    left: calc(100% - 295px);
}
.illust_10 {
	overflow: hidden;
	display: block;
	position: absolute;
	top: 1019px;
    left: 0;
	width: 170px;
}
.illust_11 {
	overflow: hidden;
	display: block;
	position: absolute;
	top: -120px;
	left: calc(100% - 300px);
	width: 140px;
}
.illust_12 {
	overflow: hidden;
	display: block;
	position: absolute;
	top: 300px;
	left: 0;
	width: 150px;
}
.illust_13 {
	overflow: hidden;
	display: block;
	position: absolute;
	bottom: 220px;
	right: 0;
	width: 105px;
}


.bg_gray {
	background: #f4f4f4;
}
.op_detail_wrap {
	padding-bottom: 138px;
}
.op_detail {
	width: 1200px;
	margin: 0 auto;
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-justify-content: space-between; /* Safari */
	justify-content: space-between;
}
.op_detail::after{
    content: none !important;
}
.op_detail_box {
	width: 31%;
	margin-top: -40px;
	position: relative;
}
.op_detail_box h3 {
	text-align: center;
	border-bottom: 2px solid #111;
	padding-bottom: 10px;
	font-weight: 500;
}
.op_detail_box img {
	width: 79px;
	display: inline-block;
	margin-bottom: 15px;
}
.op_detail_box p {
	font-size: 1rem;
    /* font-feature-settings: "palt" 1; */
    letter-spacing: 0.04em;
}
.for_contact {
	width: 360px;
	margin: 30px auto 0;
	text-align: center;
}
.for_contact img {
	width: 140px;
}
.for_contact a {
	display: inline-block;
	text-align: center;
	font-weight: bold;
	padding: 15px 0;
	border: 2px solid #000;
	border-radius: 40px;
	color: #000;
	width: 320px;
	max-width: 94%;
	margin: 15px 0;
	background: #fff;
	font-size: 1.3rem;
	transition: 0.7s;
}
.for_contact a:hover {
	background: #FFEC05;
}
.title_block {
	width: 370px;
	margin: 0 auto 100px;
}
.title_block h2 {
	text-align: center;
	line-height: 1.35;
	padding-top: 20px;
	margin: 0 auto 30px;
	padding-top: 20px;
	max-width: 300px;
}
.example_wrap {
	width: 1200px;
	margin: 0 auto;
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-justify-content: space-between; /* Safari */
	justify-content: space-between;
	flex-wrap: wrap;
}
.example_item {
	width: 350px;
	position: relative;
	margin-bottom: 100px;
}
.example_item aside {
	position: absolute;
	margin-top: -35px;
	text-align: center;
	left: calc(50% - 50px);
	z-index: 10;
}
.example_item aside img {
	width: 100px;
}
.example_item p {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 300;
	padding: 10px 0px;
	text-align: center;
}
.example_item a:hover {
	opacity: .6;
}
.service_wrap {
	width: 1200px;
	max-width: 100%;
	margin: 0 auto;
}
.service_item {
	padding: 30px 0;
	margin: 0 auto;
	text-align: center;
	position: relative;
}
.service_num {
	width: 150px;
	display: inline-block;
	vertical-align: top;
	position: absolute;
	left: 23%;
}
.service_num img {
	width: 300px;
	margin-left: 0px;
	display: inline-block;
}
.service_detail {
	width: 330px;
	margin-left: 10px;
	display: inline-block;
}
.service_detail h3,
.service_detail p {
	text-align: center;
}
.down_arrow {
	clear: both;
	text-align: center;
}
.service_note {
	position: absolute;
	left: 50%;
}
.service_note hr {
	float: left;
	width: 100px;
	margin-top: -52px;
	border: solid 1px #000;
}
.service_note p {
	background: #fff;
	border: solid 1px #000;
	padding: 15px 18px;
	float: right;
	width: 460px;
	margin-top: -80px;
}
.about_img {
	margin: 0 auto;
	text-align: center;
	max-width: 85%;
}
.example_alert {
	width: 525px;
	margin: 0 auto;
	padding-top: 30px;
}
.example_alert p {
	line-height: 1.5;
	margin-bottom: 20px;
}



/* フッタ  */
footer {
	background: #f4f4f4;
	padding: 25px 0 10px;
}
footer * {
	font-weight: 300 !important;
}
.footer_nav {
	width: 30%;
	min-width: 300px;
	margin: 0 auto;
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-justify-content: space-evenly; /* Safari */
	justify-content: space-evenly;
	flex-wrap: wrap;
}
.footer_nav_part a {
	color: #000;
}
footer aside {
	text-align: center;
}
footer aside strong {
	font-weight: 500 !important;
}
.example_pc {
	display: block;
}
.example_sp {
	display: none;
}



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

.illust_09 {
	right: 15%;
}


.example_item {
	width: 31%;
}
}
@media screen and (max-width: 1550px){

    .example_wrap {
        width: 100%;
        max-width: 800px;
    }
    
    .example_item {
        width: 50%;
        text-align: center;
    }
    }
    
@media screen and (max-width: 1230px) {
#prev {
	left: 10px;
}
#next {
	right: 10px;
}
h3 {
	font-size: 1.5rem;
}
h2 {
	font-size: 1.7rem;
}
.head_logo_container {
	position: relative;
}
.head_logo_inner {
	width: 100%;
	margin: 0 auto;
}
.head_logo_inner img {
	width: 200px;
}
.op_detail {
	width: 100%;
	margin: 0 auto;
	justify-content: space-evenly;
}
.example_wrap {
	width: 98%;
}
.illust_07{
    right: 10px;
    width: 235px;
    top: -11px;
}
.nav_container {
	display: none;
}
.head_logo_inner h1 {
	float: none;
	width: 100%;
	max-width: 100%;
	padding-right: 0;
	text-align: center;
}
main {
	padding-top: 100px;
}
#nav-toggle {
	display: block;
	position: fixed;
	z-index: 30000;
	right: 13px;
	top: 34px;
	width: 42px;
	height: 42px;
	cursor: pointer;
	text-align: center;
}
#nav-toggle span {
	display: block;
	position: absolute;
	width: 30px;
	height: 2px;
	left: 6px;
	background: #000;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
#nav-toggle span:nth-child(1) {
	top: 10px;
}
#nav-toggle span:nth-child(2) {
	top: 20px;
}
#nav-toggle span:nth-child(3) {
	top: 30px;
}
#nav-toggle.active span:nth-child(1) {
	top: 16px;
	left: 6px;
	background: #fff;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
#nav-toggle.active span:nth-child(2),
#nav-toggle.active span:nth-child(3) {
	top: 16px;
	background: #fff;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}


.nav_container_sp {
	position: fixed;
	width: 70%;
	height: 100vh;
	top: 0;
	left: 120%;
	background: rgba(0,0,0,.6);
	transition: all 0.6s;
	display: block;
	z-index: 200;
	overflow-y: scroll;
}
.nav_container_sp.active {
	left: 30%;
}
.nav_container_sp ul {
	float: none !important;
	padding: 100px 20px 10px;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}
.nav_container_sp ul li {
	display: block;
	text-align: center;
	padding: 30px 0;
	border-top: 2px solid #fff;
}
.nav_container_sp ul li:last-child {
	border-bottom: 2px solid #fff;
}
.nav_container_sp ul li a {
	font-size: 1.5rem;
}
.service_note hr {
	width: 45px;
}
.service_note p {
	font-size: .9rem;
	width: auto;
	padding: 15px 6px;
}
.illust_08 {
	left: 22%;
}
.illust_10{
    top: 1000px;
}


} /* 1230px */


@media screen and (max-width: 1024px) {
.nav_container_sp ul li a {
	font-size: 1.3rem;
}
.top_header img {
	height: 33vh;
}
.top_slide .bike {
	width: 125px;
}
.illust_01 {
	bottom: -25px;
}

.illust_03,
.illust_08 {
	left: 5%;
}
.op_detail {
	width: 100%;
	justify-content: normal;
	display: block;
	text-align: center;
}
.op_detail_box {
	width: 70%;
	margin: -50px auto 100px;
	display: inline-block;
}
.op_detail_box p {
	text-align: left;
    letter-spacing: 0;
}
.op_left {
	display: none;
}
.op_right {
	margin: 0 auto;
	float: none;
	width: 60%;
	text-align: center;
}
.op_right h2 {
	margin: 0 auto;
	padding: 0;
	max-width: 340px;
}
.op_right p {
	text-align: left !important;
}
.op_right h5 {
	margin: 0 auto;
}
#ourproject,
#example,
#service,
#about {
	padding: 50px 0;
}
.title_block {
	width: 60%;
	margin: 0 auto 100px;
	text-align: center;
}
.title_block p {
	text-align: left !important;
}
.illust_02 {
	right: 30px;
	left: auto;
	top: -70px;
	width: 160px;
}
.illust_02 img,
.illust_07 img {
	width: 60%;
}
.illust_03 {
	display: none;
}
.illust_03_2 {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
.illust_03_2 img {
	width: 65%;
	display: inline-block;
	margin: 0 auto;
}
.illust_07 {
	right: 20px;
    left: auto;
    top: 97px;
    width: 200px;
}
.illust_07 img{
	width: 200px;
}
.illust_08 {
	display: none;
}
.illust_09 {
	display: none;
}
.illust_10 {
	right: 5%;
	top: auto;
	bottom: -70px;
	width: 160px;
	left: auto;
}
.illust_11 {
	display: none;
}
.illust_11_2 {
	left: calc(50% - 60px);
	right: auto;
	width: 120px;
	bottom: 100px;
	position: absolute;
	display: block;
}
.illust_12 {
	display: none;
}
.illust_13 {
	display: none;
}
#service,
#service_sp,
#about {
	padding: 100px 0;
}
#about {
	padding-bottom: 350px;
}
#service {
	display: none;
}
#service_sp {
	display: block;
	position: relative;
}
#service_sp .service_flow_imgs img {
	display: block;
	margin: 0 auto;
	width: 85%;
}
#service_sp .title_block {
	margin: 0 auto 40px;
}
.illust_07 img {
	width: 200px;
}


#contact {
	padding: 0;
}
#contact .lower_container {
	width: 100%;
}
#contact .lower_header_title {
	display: none;
}
#contact .lower_header_title_sp {
	display: block;
	text-align: center;
	padding: 30px 0;
	width: 150px;
	margin: 0 auto;
}
#contact .status_bar {
	display: none;
}
#contact .contact_label label {
	padding-top: 8px;
	letter-spacing: 0;
}
#contact .contact_input {
	margin-bottom: 20px;
}
#contact .contact_illust_01 {
	width: 16%;
	top: 60px;
	left: 30px;
	max-width: 100px;
}
#contact .contact_illust_02 {
	width: 12%;
	right: 20px;
	top: 80px;
	max-width: 50px;
}
#contact .contact_illust_03 {
	display: none;
}
#contact .contact_illust_04 {
	width: 50%;
	right: calc(50% - 100px);
	max-width: 200px;
	bottom: 40px;
}
#contact .lower_container {
	padding: 40px 8px 220px;
}
#contact form {
	width: 100%;
	padding: 0;
}
#contact .contact_label {
	width: 30%;
}
#contact .contact_input {
	width: 70%;
}
#contact * {
	font-size: .7rem;
}
#contact input[type="text"] {
	height: 40px;
	width: 100% !important;
}
#contact textarea {
	width: 100% !important;
}
#contact .contact_input_left {
	width: 20%;
	float: left;
	text-align: right;
	padding-right: 2px;
	letter-spacing: 0;
}
#contact .contact_input_right {
	width: 80%;
}
.contact_note {
	width: 100% !important;
	font-size: .7rem !important;
}



} /* 1024 */




@media screen and (max-width: 768px) {
    #ourproject{
        padding-top: 17px;
    }
.nav_container_sp ul li a {
	font-size: 1rem;
}
.example_pc {
	display: none;
}
.example_sp {
	display: block;
	padding: 100px 0;
}
#next,
#prev {
	width: 15px;
}
#top {
	padding-top: 50px;
}
.op_right {
	width: 80%;
}
p {
	font-size: .9rem !important;
}
.illust_01 {
	left: 6%;
}
.illust_01 img {
	width: 90%;
}
.op_detail_box {
	margin: -20px auto 60px;
}
.op_detail_box img {
	width: 60px;
}
.op_detail_box {
	width: 80%;
}
.op_detail_box h3 {
	font-size: 1.2rem;
	padding: 0 15px 10px;
}
.illust_03_2 {
	top: 15px;
	width: 40px;
}
.for_contact a {
	width: 280px;
	padding: 10px;
	font-size: 1.1rem;
}
.illust_02 {
	right: 10px;
	width: 100px;
}
.title_block {
	width: 80%;
}
.title_block h2 {
	font-size: 1.2rem;
}
.example_item_sp {
	width: 85%;
	margin: 0 auto;
	padding-bottom: 10px;
	border-bottom: 2px solid #000;
	position: relative;
}
.example_item_sp aside {
	width: 100px;
	top: -40px;
	position: absolute;
	left: calc(50% - 50px);
}
.example_item_sp_desc {
	width: 85%;
	margin: 0 auto 30px;
	padding-top: 15px;
}
.illust_07 img {
	width: 150px;
}
.illust_07 {
	right: 0;
    top: 54px;
	width: 150px;
}
.for_contact {
	width: 95%;
}
.illust_10 {
	right: 5%;
	top: auto;
	bottom: -50px;
	width: 100px;
	left: auto;
}
.top_slide .bike {
	width: 95px;
}


} /* 768px */


@media screen and (max-width: 400px) {
.example_list a {
	font-size: .6rem;
}
.example_list {
	list-style: none;
	padding: 0;
	padding-left: 2px;
}
.top_header,
.top_header img {
	height: 220px !important;
}


} /* 400px */
