@charset "utf-8";

/*!
 * common.css : v0.1
 * date : 20170404
 */

/* import
-----------------------------------------------------------*/
 @import url('https://fonts.googleapis.com/css?family=Poppins:400,700');

/* Setting-basic
-----------------------------------------------------------*/
body {
	font-family: '游ゴシック体','YuGothic','游ゴシック','Yu Gothic','ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro','メイリオ',Meiryo,sans-serif;
	color: #333;
	background: #fff;
	line-height: 1.5;
	font-size: 14px;
	-webkit-text-size-adjust:100%;
	margin: 0;
}
.clearfix {
	clear: both;
	overflow: hidden;
}

/* Module
-----------------------------------------------------------*/
img {
	border: 0;
	vertical-align: middle;
}
ol,ul {
	list-style: none;
}
p {
	margin: 0 0 25px;
	line-height: 1.7;
}
h1,h2,h3,h4,h5,h6 {
	margin: 0 0 25px;
	line-height: 1.3;
	font-size: 100%;
}

/* Hypertext Module
-----------------------------------------------------------*/
a:link,
a:visited {
	color: #333;
	text-decoration: none;
	-webkit-transition: all .2s ease-in-out;
	-ms-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
a:hover {
	color: #7a7a7a;
}

/* General Settings
-----------------------------------------------------------*/
/* Margin Control */
.mb00 { margin-bottom: 0!important;}
.mb05 { margin-bottom: 5px!important;}
.mb10 { margin-bottom: 10px!important;}
.mb15 { margin-bottom: 15px!important;}
.mb20 { margin-bottom: 20px!important;}
.mb25 { margin-bottom: 25px!important;}
.mb30 { margin-bottom: 30px!important;}
.mb40 { margin-bottom: 40px!important;}
.mb50 { margin-bottom: 50px!important;}
.mb60 { margin-bottom: 60px!important;}
.mb70 { margin-bottom: 70px!important;}
.mb80 { margin-bottom: 80px!important;}
.mb90 { margin-bottom: 90px!important;}
.mb100 { margin-bottom: 100px!important;}
.mb120 { margin-bottom: 120px!important;}
.mb130 { margin-bottom: 130px !important;}
.mb140 { margin-bottom: 140px !important;}
.mb150 { margin-bottom: 150px !important;}
.mb160 { margin-bottom: 160px !important;}

.mt00 { margin-top: 0 !important;}
.mt05 { margin-top: 5px !important;}
.mt10 { margin-top: 10px !important;}
.mt20 { margin-top: 20px !important;}
.mt30 { margin-top: 30px !important;}
.mt40 { margin-top: 40px !important;}
.mt50 { margin-top: 50px !important;}
.mt60 { margin-top: 60px !important;}
.mt70 { margin-top: 70px !important;}
.mt80 { margin-top: 80px !important;}
.mt90 { margin-top: 90px !important;}
.mt100 { margin-top: 100px !important;}
.mt110 { margin-top: 110px !important;}
.mt120 { margin-top: 120px !important;}
.mt130 { margin-top: 130px !important;}
.mt140 { margin-top: 140px !important;}
.mt150 { margin-top: 150px !important;}
.mt160 { margin-top: 160px !important;}

/* width */
.width100 { width: 100%;}
.width90 { width: 90%;}
.width80 { width: 80%;}
.width70 { width: 70%;}
.width60 { width: 60%;}
.width50 { width: 50%;}
.width40 { width: 40%;}
.width30 { width: 30%;}
.width20 { width: 20%;}
.width10 { width: 10%;}
.width5 { width: 5%;}

/* font size */
.text75 { font-size: 75%;}
.text80 { font-size: 80%;}
.text85 { font-size: 85%;}
.text90 { font-size: 90%;}
.text100 { font-size: 100%;}
.text110 { font-size: 110%;}
.text120 { font-size: 120%;}
.text130 { font-size: 130%;}
.text140 { font-size: 140%;}
.text160 { font-size: 160%;}
.text180 { font-size: 180%;}
.text200 { font-size: 200%;}
.text220 { font-size: 220%;}
.text240 { font-size: 240%;}
.text260 { font-size: 260%;}

/* color */
.c_000 { color: #000;}
.c_333 { color: #333;}
.c_555 { color: #555;}
.c_888 { color: #888;}
.c_fff { color: #fff;}
.c_red { color: #f00;}
.c_blue { color: #0e92e5;}
.c_green { color: #86bf00;}
.c_orange { color: #ee761b;}

/* font style */
.boldstyle { font-weight: bold;}
.normalstyle { font-weight: normal;}
.italicstyle { font-style: italic;}

/* text-align */
.aligncenter { text-align: center;}
.alignleft { text-align: left;}
.alignright { text-align: right;}

/* Table Module
-----------------------------------------------------------*/
table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}
td,th {
	font-size: 18px;
	padding: 15px;
	text-align: left;
	line-height: 1.5;
	font-weight: normal;
	background: #fff;
}
table.formTable th {
	width: 240px;
	color: #06B4EA;
}

/* Forms Module
-----------------------------------------------------------*/
.input_text,
textarea {
	padding: 15px;
	background: #fff;
}
input:focus {
	outline: none;
	background: #FFFEE1;
}
::-webkit-input-placeholder {
	color: #ADDBF6;
	font-size: 12px;
}
::-moz-placeholder {
	color: #ADDBF6;
	font-size: 12px;
}
:-ms-input-placeholder {
	color: #ADDBF6;
	font-size: 12px;
}
:-moz-placeholder {
	color: #ADDBF6;
	font-size: 12px;
}

.selectbox {
	padding: 5px 20px;
	background: #f1f1f1;
	border: 1px solid #aaa;
}


/* layout
-----------------------------------------------------------*/
.sp_only {
	display: none!important;
}
.wrap {
	position: relative;
	margin: 0 auto;
	max-width: 1260px;
	width: 100%;
}
.wrap_960 {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}
.wrap_600 {
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
}
.wrap_420 {
	width: 100%;
	max-width: 420px;
	margin: 0 auto;
}
.header_back {
	height: 85px;
	width: 100%;
	background-color: white;
}
.header_wrap {
	margin: 0 auto;
	width: 100%;
	background-color: white;
	position: fixed;
	padding: 0 30px;
	z-index: 49;
	top: 0;
	box-shadow: 0px 0px 4px 0px #919191;
}
.header {
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1200px;
	width: 100%;
	padding: 20px 0px;
	background-color: white;
}
.header img{
	width: 100%;
}
.text_header h2{
	margin-bottom: 0;
	margin-top: 3%;
}
.text_header2 {
	display: none;
}

.logo_ribias {
	width: 17%;
}
.text_header {
	width: 40%;
	display: inline-block;
}
.tel {
	width: 35%;
}

.main_wrap {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}
.main {
	width: 100%;
	max-height: 900px;
	background: url(../images/main_back.jpg) no-repeat;
	background-size: cover;
	overflow: hidden;
}
.main_text {
	position: absolute;
	left: 2%;
	top: 40%;
	transform: translate(0, -50%);
	z-index: 3;
}
.main_text1 {
	font-size: 33px;
	letter-spacing: -0.1em;
}
.main_text2 {
	font-size: 26px;
	color: white;
}

.main_text h1{
	font-size: 60px;
	color: white;
	line-height: 1.1;
	letter-spacing: -0.1em;
	margin-bottom: 0;
}
.osishi_eco img{
	width: 100%;
	max-width: 550px;
	position: absolute;
	z-index: 2;
	right: 10%;
	bottom: 0;
}
.osishi_eco {
	margin: 0 auto;
	width: 100%;
	max-width: 1300px;
	height: 650px;
}
.kouhyo {
	position: absolute;
	right: 30px;
	bottom: 300px;
	z-index: 1;
}
.kouhyo img{
	width: 100%;
	max-width: 300px;
	animation: mainimg_ttl 2.0s infinite ease-in-out;
	-webkit-animation: mainimg_ttl 2.0s infinite ease-in-out;
}


@-webkit-keyframes scaleout {
  0% { -webkit-transform: rotate(-4deg)
  } 50% {
		-webkit-transform: rotate(4deg);
  } 100% {
		-webkit-transform: rotate(-4deg);
  }
}
@keyframes mainimg_ttl {
	0% {
		transform: rotate(-4deg);
		-webkit-transform: rotate(-4deg);
	} 50% {
		transform: rotate(4deg);
		-webkit-transform: rotate(4deg);
	} 100% {
		transform: rotate(-4deg);
		-webkit-transform: rotate(-4deg);
	}
}



.omousikomikotira {
	width: 100%;
	max-width: 480px;
	position: absolute;
	left: 30%;
	bottom: 75px;
	z-index: 5;
	-webkit-transition: ease-out .1s;
	-ms-transition: ease-out .1s;
	-o-transition: ease-out .1s;
	transition: ease-out .1s;
}
.omousikomikotira p {
	display: inline-block;
	text-align: center;
	font-size: 27px;
	font-weight: bold;
	padding: 20px 130px;
	color: white;
	background-color: #ec576c;
	margin-bottom: 0;
	line-height: 1;
	border: 2px solid #FFFFFF;
	box-shadow: 4px 4px 0 1px #FFFFFF;
}
.omousikomikotira :hover {
    background-color: #f88695;
	-webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
	-webkit-transition: ease-out .1s;
	-ms-transition: ease-out .1s;
	-o-transition: ease-out .1s;
	transition: ease-out .1s;
}
.omousikomikotira2 {
	width: 100%;
	max-width: 480px;
	position: absolute;
	left: 30%;
	bottom: 0px;
	z-index: 5;
	-webkit-transition: ease-out .1s;
	-ms-transition: ease-out .1s;
	-o-transition: ease-out .1s;
	transition: ease-out .1s;
}
.omousikomikotira2 p {
	display: inline-block;
	text-align: center;
	font-size: 27px;
	font-weight: bold;
	padding: 20px 130px;
	color: white;
	background-color: #ec576c;
	margin-bottom: 0;
	line-height: 1;
	border: 2px solid #000;
	box-shadow: 4px 4px 0 1px #000;
}
.omousikomikotira2 :hover {
    background-color: #f88695;
	-webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
	-webkit-transition: ease-out .1s;
	-ms-transition: ease-out .1s;
	-o-transition: ease-out .1s;
	transition: ease-out .1s;
}


.main_text3 {
	position: absolute;
	z-index: 4;
	font-size: 17px;
	color: white;
	top: 92%;
	left: 60%;
	z-index: 5;
	font-weight: bold;
	margin-bottom: 0;
}
.main_text3 span{
	font-size: 22px;
}
.thanks,
.form,
.contact,
.info,
.info_seminar,
.access,
.interview,
.schedule,
.mission,
.merit,
.solution,
.mawaru,
.massage {
	text-align: center;
	padding: 70px 30px;
}
.thanks_title,
.contact_title,
.info_title,
.info_seminar_title,
.access_title,
.brand_title,
.interview_title,
.schedule_title,
.mission_title,
.merit_title,
.solution_title,
.massage_title {
	width: 100%;
	max-width: 194px;
	margin-bottom: 20px;
	padding: 0 30px;
}
.info_title {
	max-width: 313px;
}
.thanks h3,
.info h3,
.info_seminar h3,
.access h3,
.brand h3,
.interview h3,
.schedule h3,
.mission h3,
.merit h3,
.solution h3,
.massage h3{
	font-size: 37px;
	margin-bottom: 50px;
}
.thanks p,
.info_seminar p,
.access p,
.schedule p,
.mission p,
.merit p,
.solution p,
.massage p {
	font-size: 18px;
	padding: 0 30px;
}


.effect_fadein {
	overflow: hidden;
	opacity: 0;
	transition: 0.5s;
	-moz-transition: 0.5s;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
	transform: translate(0,-30px); 
	-moz-transform: translate(0,-30px);
	-webkit-transform: translate(0,-30px); 
	-o-transform: translate(0,-30px);
	-ms-transform: translate(0,-30px);
}
.effect_def {
	opacity: 1.0;
	transform: translate(0,0); 
	-moz-transform: translate(0,0);
	-webkit-transform: translate(0,0); 
	-o-transform: translate(0,0);
	-ms-transform: translate(0,0);
}



.back {
	background: url(../images/back.jpg);
}
.mawaru h3, 
.mawaru h4{
	text-align: center;
	padding: 0 30px;
}
.contact h3,
.mawaru h3 {
	font-size: 43px;
	color: #fff799;
}
.contact p {
	font-size: 22px;
	color: white;
	margin-bottom: 10px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 10px;
}
.contact p:last-child {
	margin-bottom: 0;
}
.mawaru h4 {
	font-size: 35px;
	color: white;
}
.contact_back,
.mawaru_back {
	width: 100%;
	background: url(../images/mawaru_back.jpg) no-repeat;
	background-size:cover;
}
.mawaru_koumoku_wrap {
	justify-content: space-between;
}
.mawaru_koumoku {
	width: 23%;
}
.mawaru_koumoku p {
	line-height: 1.25;
	font-weight: bold;
	text-align: center;
	padding: 25px 15px;
	font-size: 20px;
	background-color: white;
}
.mawaru_koumoku span {
	font-weight: normal;
	color: #447af1;
}

.solution_img {
	justify-content: space-between;
}
.solution_img img{
	max-width: 360px;
	width: 100%;
}
.solution_image {
	width: 31%;
	margin-bottom: 60px;
}
.brand_back,
.schedule_back,
.merit_back {
	background-color: #348de9;
}

.brand span,
.schedule span,
.merit span {
	color: white;
}
.merit_img {
	justify-content: space-between;
}
.merit_img img{
	max-width: 565px;
	width: 100%;
}
.merit_image {
	margin: 0 auto;
	max-width: 565px;
	width: 47%;
	border: 1px solid white;
	margin-bottom: 60px;
	background-color: #333333;
}
.merit_text {
	padding: 30px;
	background-color: #333333;
}
.merit_text h5 {
	text-align: center;
	font-size: 27px;
	color: #fff799;
	margin-bottom: 15px;
}
.merit_text p {
	text-align: left;
	font-size: 16px;
	color: white;
	margin-bottom: 0;
	padding: 0;
}
.mission_back {
	width: 100%;
	background: url(../images/kurosu.png) no-repeat;
	background-position: center center;
}
.mission_img {
	justify-content: space-between;
}
.mission_list3,
.mission_list2,
.mission_list1 {
	width: 37.5%;
}
.mission_list1 {
	margin: 0 31%;
}

.mission_img img{
	max-width: 304px;
	width: 100%;
	margin-bottom: 16px;
	border: 6px solid #dee7f5;
}
.mission_list3 h5,
.mission_list2 h5,
.mission_list1 h5 {
	font-size: 25px;
	color: #447af1;
	margin-bottom: 15px;
}
.mission_list3 h4,
.mission_list2 h4,
.mission_list1 h4 {
	font-size: 32px;
	margin-bottom: 25px;
}
.mission_list3 h4 {
	font-size: 29px;
}
.mission_list3 span {
	letter-spacing: -0.29em;
}
.mission_list3 p,
.mission_list2 p {
	font-size: 18px;
	margin-bottom: 0;
}
.mission_list3 p,
.mission_list2 p,
.mission_list1 p {
	font-size: 18px;
	margin-bottom: 0;
	padding: 0 80px;	
}
.schedule_wrap {
	width: 70%;
	margin: 0 auto;
	max-width: 850px;
}
.schedule_list4,
.schedule_list3,
.schedule_list2,
.schedule_list1 {
	justify-content: space-between;
	max-width: 850px;
	margin-bottom: 13px;
}
.schedule_list_img {
	width: 22%;
}
.schedule_list4_text,
.schedule_list3_text,
.schedule_list2_text,
.schedule_list1_text {
	width: 73%;
	margin: 50px 0 0 0;
}
.schedule_list2_text {
	margin: 30px 0 0 0;
}

.schedule_list_img img{
	background-color: #ffffff;
	max-width: 190px;
	width: 100%;
	border: 6px solid #dee7f5;
	border-radius: 50%;
}
.schedule_list4_text h5,
.schedule_list3_text h5,
.schedule_list2_text h5,
.schedule_list1_text h5 {
	margin-bottom: 15px;
	text-align: left;
	font-size: 27px;
	color: #fff799;
	font-weight: normal;
}
.schedule_list4 p,
.schedule_list3 p, 
.schedule_list2 p, 
.schedule_list1 p {
	padding: 0;
	text-align: left;
	color: white;
	font-size: 18px;
	font-weight: normal;
}
.schedule_list4_text h5::before,
.schedule_list3_text h5::before,
.schedule_list2_text h5::before,
.schedule_list1_text h5::before {
	margin-right: 30px;
	position: relative;
	bottom: 5px;
	content: '';
	display: inline-block;
	background-size: contain;
	vertical-align: middle;
	height: 39px;
}
.schedule_list1_text h5::before {
	background-image: url(../images/schedule_01.png);
	width: 34px;
}
.schedule_list2_text h5::before {
	background-image: url(../images/schedule_02.png);
}
.schedule_list3_text h5::before {
	background-image: url(../images/schedule_03.png);
}
.schedule_list2_text h5::before,
.schedule_list3_text h5::before {
	width: 42px;
}
.schedule_list4_text h5::before {
	background-image: url(../images/schedule_04.png);
	width: 44px;
}

.contact_wrap {
	width: 100%;
	margin: 0 auto;
	max-width: 850px;
}
.contact_list4,
.contact_list3,
.contact_list2,
.contact_list1 {
	justify-content: space-between;
	max-width: 850px;
	margin-bottom: 13px;
}
.contact_list4_text,
.contact_list3_text,
.contact_list2_text,
.contact_list1_text {
	margin: 50px 0 0 0;
}
.schedule_list2_text {
	margin: 30px 0 0 0;
}

.contact_list4_text h5,
.contact_list3_text h5,
.contact_list2_text h5,
.contact_list1_text h5 {
	margin-bottom: 15px;
	text-align: left;
	font-size: 27px;
	color: #fff799;
	font-weight: normal;
}
.contact_list4 p,
.contact_list3 p, 
.contact_list2 p, 
.contact_list1 p {
	padding: 0;
	text-align: left;
	color: white;
	font-size: 18px;
	font-weight: normal;
}
.contact_list4_text h5::before,
.contact_list3_text h5::before,
.contact_list2_text h5::before,
.contact_list1_text h5::before {
	margin-right: 30px;
	position: relative;
	bottom: 5px;
	content: '';
	display: inline-block;
	background-size: contain;
	vertical-align: middle;
	height: 39px;
}
.contact_list1_text h5::before {
	background-image: url(../images/schedule_01.png);
	width: 34px;
}
.contact_list2_text h5::before {
	background-image: url(../images/schedule_02.png);
}
.contact_list3_text h5::before {
	background-image: url(../images/schedule_03.png);
}
.contact_list2_text h5::before,
.contact_list3_text h5::before {
	width: 42px;
}
.cntact_list4_text h5::before {
	background-image: url(../images/schedule_04.png);
	width: 44px;
}

.border_hukidashi2,
.border_hukidashi {
  position: relative;
  display: inline-block;
  margin-bottom: 20px;
  width: 100%;
  border: solid 1px #FFFFFF;
  box-sizing: border-box;
}

.border_hukidashi::after{
  content: "";
  position: absolute;
  left: 50%;
  border: 13px solid transparent;
  border-top: 12px solid #FFFFFF;
  z-index: 1;
}

.interview_wrap {
	justify-content: space-between;
}
.interview_list {
	width: 47%;
	border: 2px solid black;
	box-shadow: 4px 4px 0 0px black;
	margin-bottom: 50px;
	background-color: white;
}
.interview_list_sab {
	text-align: left;
	font-size: 18px;
	padding: 20px 24px;
	background-color: white;
	margin-bottom: 0;
}
.interview_list_sab span{
	letter-spacing: -0.05em;
}
.interview_list_title {
	font-size: 23px;
	color: #fff799;
	text-align: left;
	padding: 18px 24px;
	background-color: #ec576c;
	margin-bottom: 0;
}
.brand_list {
	justify-content: space-between;
}
.btn_brand a {
	display: inline-block;
	text-align: center;
	font-size: 27px;
	font-weight: bold;
	padding: 20px 130px;
	color: white;
	background-color: #ec576c;
	margin-bottom: 0;
	line-height: 1;
	border: 2px solid #FFFFFF;
	box-shadow: 4px 4px 0 1px #FFFFFF;
}
.btn_brand a:hover {
    background-color: #f88695;
	-webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
	-webkit-transition: ease-out .1s;
	-ms-transition: ease-out .1s;
	-o-transition: ease-out .1s;
	transition: ease-out .1s;
}

.brand_logo {
	width: 19%;
	margin-bottom: 50px;
}
.brand_logo_none {
	width: 19%;
}
.brand_logo img{
	max-width: 223px;
	width: 100%;
	border-radius: 50%;
	margin-bottom: 15px;
}
.brand_logo p,
.brand_logo h6 {
	color: white;
}
.brand_logo p {
	line-height: 1;
	margin-bottom: 7px;
}
.brand_logo h6 {
	font-size: 21px;
}
.nittei2,
.nittei {
	width: 100%;
	max-width: 816px;
	margin: 0 auto;
	margin-bottom: 50px;
}
.nittei2 {
	max-width: 900px;
}
.nitiji {
	justify-content: space-between;
}
.nittei_title4,
.nittei_title3,
.nittei_title2,
.nittei_title {
	width: 19%;
	border-top: 2px solid black;
	height: 165px;
}
.nittei_title4 {
	width: 25%;
	height: 61px;
}
.nittei_title2 {
	height: 300px;
}
.nittei_title3 {
	height: 61px;
}
.nittei_title4 p,
.nittei_title3 p,
.nittei_title2 p,
.nittei_title p {
	font-size: 20px;
	font-weight: bold;
	line-height:454px;
	vertical-align: middle;
}
.nittei_title4 p {
	font-size: 17px;
	line-height: 61px;
	
}
.nittei_title2 p {
	line-height: 300px;
}
.nittei_title3 p {
	line-height: 61px;
}
.nittei_syosai {
	width: 74%;
	border-top: 2px solid #d2d2d2;
}
.kaijo,
.nittei_syosai p {
	margin-bottom: 5px;
	text-align: left;
	font-weight: bold;
	font-size: 16px;
}
.nittei_syosai :last-child {
	margin-bottom: 0;
}

.nittei_syosai_wrap {
	padding: 17px;
}
.hiduke_day,
.hiduke p {
	position: relative;
	font-weight: bold;
	font-size: 24px;
    margin-bottom: 5px;
}
.hiduke_wrap2,
.hiduke_wrap {
	overflow: hidden;
	border-bottom: 1px dotted #747474;
	margin-bottom: 10px;
}
.nittei_table tr td .hiduke:last-child,
.nittei_table tr td .hiduke .hiduke_wrap2:last-child {
	margin-bottom: 0;
}
.hiduke_wrap2:last-child,
.hiduke_wrap:last-child {
	border-bottom: none;	
}
.hiduke_day,
.hiduke_wrap_p {
	float: left;	
}

.hiduke {
	margin-bottom: 30px;
}

.hiduke_icon_p p{
	font-size: 16px;
	margin-bottom: 0;
	font-weight: bold;
}
.kaijo span,
.nittei_syosai span {
	padding: 3px 4px 1px;
	color: white;
	background-color: #87aaf6;
	display: block;
	display: inline-block;
}
.hiduke_icon3,
.hiduke_icon2,
.hiduke_icon {
	float: right;
	border-radius: 20px;
	position: relative;
	margin-left: 10px;
	color: white;
	font-size: 13px;
	padding: 4px 10px 2px;
	background-color: #4a4a4a;
}

.hiduke_icon2 {
	background-color: #c81414;
}
.hiduke_icon3 {
	background-color: #87aaf6;
}

.access {
	margin-bottom: 75px;
}
.access:last-child{
	margin-bottom: 30px;
}
.access_title {
	max-width: 1200px;
	width: 100%;
	border: 2px solid #348de9;
	margin-bottom: 20px;
}
.access_title p {
	font-weight: bold;
	width: 100%;
	text-align: center;
	font-size: 32px;
	color: #348de9;
	margin-bottom: 0;
	line-height: 1;
	padding: 20px 0;
	background-color: white;
}
.map {
	width: 100%;
	height: 360px;
	background-color: #692626;
}
.osishi_eco_contact img {
	max-width: 246px;
	width: 100%;
}
.contact {
	position: relative;
}
.contact h3 {
	font-size: 38px;
}
.osishi_eco_contact {
	position: absolute;
	bottom: 0;
	right: 40px;
	z-index: 1;
}
.contact_text {
	position: relative;
	z-index: 2;
}
.form span {
	color: #447af1;
}


.form {
	width: 100%;
	max-width: 896px;
	margin:  0 auto;
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    margin: 0px auto 25px auto;
    background-repeat:no-repeat;
    padding-bottom: 10px;
    text-align: center;
    background-color: #FFF;
}

.form p{
	text-align: left;
    font-size:18px;
    margin-bottom:65px;
    color:#333;
}
.submit_box4,
.submit_box3,
.submit_box2,
.submit_box{
	max-width: 538px;
    width: 100%;
    margin-bottom: 15px;
    text-align: center;
    margin-top: 20px;
	border: 2px solid black;
	margin: 0 auto;
	box-shadow: 4px 4px 0 0px black;
}
.submit_box4 p,
.submit_box3 p,
.submit_box2 p,
.submit_box p{
	display: inline-block;
	font-size: 27px;
	font-weight: bold;
    color: #ffffff;
    text-align: left;
    padding: 18px 24px;
    margin-bottom: 0;
}
.submit_box4 p,
.submit_box3 p,
.submit_box2 p {
	font-size: 20px;
    padding: 10px 24px;
}

.submit_box4,
.submit_box3,
.submit_box2 {
    background-repeat: no-repeat;
	max-width: 330px;
    width: 48%;
    outline-style: none;
    cursor: pointer;
    cursor: hand;
    background-color: #ec576c;
}
.submit_box4 {
	display: inline-block;
	width: 100%;
}
.submit_box4  a{
	display: inline-block;
}

.submit_box3 {
    background-color: #787878;
}

.submit_box_wrap {
	justify-content: space-between;
	max-width: 673px;
	width: 100%;
	margin: 0 auto;
}
.submit_box_text2::before{
	position: relative;
	content: '';
	display: inline-block;
	background-size: contain;
	vertical-align: middle;
	height: 22px;
	width: 23px;
	bottom: 5px;
	margin-right: 5px;
	background-image: url(../images/homeback.svg);
}


.form input[type="text"],input[type="email"]{
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    border:0;
    padding:3px;
    font-size:1.3em;
    font-family:Arial, sans-serif;
    color:#333;
    border:solid 1px #ccc;
    /*width:90%;*/
    height:40px;
    /*background-color:#FFE6CE;
    border:#F93 solid 1px;*/
    background-color: #FFF;
    border: #999 solid 1px;
}

.w_90{ width:100%;}

.w_150px{ width:150px;}

.form textarea{
    border:0;
    padding:10px;
    font-size:1.3em;
    font-family:Arial, sans-serif;
    color:#333;
    margin:0 0 10px;
    width:550px;
    height:150px;
        /*background-color:#FFE6CE;
    border:#F93 solid 1px;*/
    background-color: #FFF;
    border: #999 solid 1px;
}

.form button[type="submit"]{
    background-repeat:no-repeat;
    max-width: 538px;
    width: 100%;
    outline-style:none;
    cursor: pointer;
	cursor: hand;
    background-color: #ec576c;
    border: 0;
}
.form button[type="submit"]:hover {
    background-color: #f88695;
}

.form table{
    margin: 0px auto;
}
table {
	width: 100%;
}
.mb5,
.td1,
.td2 {
	font-weight: bold;
}

.td1{
    width:40%;
    padding:15px;
    color:#333333;
    }
.td2{
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    padding:5px;
    color:#333333;
    font-size: 12px;
}
.td3 {
	line-height: 2;
	padding: 0;
	padding-bottom: 40px;
}

input[type="radio"]{ padding:5px; margin:10px;}

.check{ font-size:18px; color:#333;}

input[type=radio], input[type=checkbox] {
    display: none;
}

input[type=radio]:checked + .radio:before,
input[type=checkbox]:checked + .check:before {
    opacity: 1;
}

.check {
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    margin: 0 20px 0 0;
    padding: 0 0 0 30px;
    vertical-align: middle;
    cursor: pointer;
}

.check:hover:after {
    border-color: #447af1;
}

.check:after {
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    margin-top: -12px;
    width: 18px;
    height: 18px;
    border: 2px solid #bbb;
    border-radius: 3px;
    content: '';
}

.check:before {
    position: absolute;
    top: 50%;
    left: 7px;
    display: block;
    margin-top: -9px;
    width: 5px;
    height: 10px;
    border-right: 3px solid #2C9AB7;
    border-bottom: 3px solid #2C9AB7;
    transform: rotate(45deg);
    content: '';
    opacity: 0;
}

.radio {
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    margin: 0 20px 0 0;
    padding: 0 0 0 30px;
    vertical-align: middle;
    cursor: pointer;
}

.radio:hover:after {
    border-color: #447af1;
}

.radio:after {
    position: absolute;
    top: 50%;
    left: 2px;
    display: block;
    margin-top: -10px;
    width: 18px;
    height: 18px;
    border: 2px solid #bbb;
    border-radius: 50%;
    content: '';
}

.radio:before {
    position: absolute;
    top: 50%;
    left: 6px;
    display: block;
    margin-top: -6px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #447af1;
    content: '';
    opacity: 0;
}

.pagetop {
	border: 1px solid white;
	border-radius: 50%;
	position: fixed;
	bottom: -68px;
	right: 40px;
	z-index: 20;
	-webkit-transition: ease-out .3s;
	-ms-transition: ease-out .3s;
	-o-transition: ease-out .3s;
	transition: ease-out .3s;
}
.pagetop:hover {
	-webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
	-webkit-transition: ease-out .1s;
	-ms-transition: ease-out .1s;
	-o-transition: ease-out .1s;
	transition: ease-out .1s;
}
.pagetop.scrolldown {
	bottom: 40px;
}

.side2,
.side {
	position: fixed;
	top: 106px;
	right: 0px;
	z-index: 50;
}
.side2:hover,
.side:hover {
	-webkit-transform: scale(1.01);
    -ms-transform: scale(1.01);
    -o-transform: scale(1.01);
    transform: scale(1.01);
}
.side img {
	max-width: 80px;
	width: 100%;
}
.side2 img {
	max-width: 60px;
	width: 100%;
	display: none;
}
.footer p{
	background-color: #333333;
	padding: 30px 0 50px;
	text-align: center;
	font-size: 14px;
	color: white;
	margin-bottom: 0;
}
.form {
	margin-bottom: 200px;
}



.error_messe {
	color: #f36;
	margin-bottom: 0;
}


.nittei_table {
	margin-bottom: 20px;
    border-collapse: inherit;
    border-spacing: 20px 0px;
}
.nittei_table th,
.nittei_table td {
	background: none;
}
.nittei_table th {
	text-align: center;
    border-top: 2px solid black;
    font-weight: bold;
}
.nittei_table td {
    border-top: 2px solid #d2d2d2;
}
.nittei_table td p {
	margin-bottom: 0;
}
.hiduke2 {
	margin-bottom: 20px;
}
.nittei_table td .hiduke2 .hiduke_icon_p p {
    font-size: 16px;
}
.nittei_table td  p.td_text {
	font-size: 16px;
	margin-bottom: 20px;
}


/* Responsive
-----------------------------------------------------------*/
@media screen and (max-width: 1450px) {

.side2 img {
	display: block;
}
.side img {
	display: none;
}



}


/* Responsive
-----------------------------------------------------------*/
@media screen and (max-width: 1170px) {

.main_text {
	position: absolute;
	z-index: 3;
}
.osishi_eco img {
	right: -5%;
}
.main_text3 {
	left: 30px;
}
.omousikomikotira,
.omousikomikotira2 {
	left: 30px;
}
.omousikomikotira p,
.omousikomikotira2 p {
	font-size: 22px;
}
.kouhyo {
	position: absolute;
	right: -10px;
	bottom: -20px;
	z-index: 8;
}
.kouhyo img{
	width: 100%;
	max-width: 250px;
}

.wrap_960,
.wrap_800,
.wrap_600,
.wrap_650,
.wrap_400 {
	width: 94%;
	margin: 0 auto;
}


}


/* Responsive
-----------------------------------------------------------*/
@media screen and (max-width: 900px){

.header_back {
	height: 60px;
}
.text_header h2{
	display: none;
}
.osishi_eco {
	height: 550px;
}
.osishi_eco img{
	max-width: 450px;
	right: -7%;
}

.main_text1 {
	font-size: 30px;
}
.main_text2 {
	font-size: 22px;
}

.main_text h1{
	font-size: 62px;
}
.thanks br {
	display: none;
}
.mission_back {
	background: none;
}

.mission_list3,
.mission_list2,
.mission_list1 {
	padding-bottom: 68px;
	width: 100%;
}
.mission_list1 {
	margin: 0;
}

.mission_img img{
	margin-bottom: 16px;
	border: 6px solid #dee7f5;
}
.mission_list3 h5,
.mission_list2 h5,
.mission_list1 h5 {
	font-size: 25px;
	color: #447af1;
	margin-bottom: 15px;
}
.mission_list3 h4,
.mission_list2 h4,
.mission_list1 h4 {
	font-size: 32px;
	margin-bottom: 25px;
}
.mission_list3 h4 {
	font-size: 29px;
}
.mission_list3 span {
	letter-spacing: -0.29em;
}
.mission_list3 p,
.mission_list2 p {
	font-size: 18px;
	margin-bottom: 0;
}
.mission_list3 p,
.mission_list2 p,
.mission_list1 p {
	font-size: 18px;
	margin-bottom: 0;
	padding: 0 80px;	
}


}


/* Responsive
-----------------------------------------------------------*/
@media screen and (max-width: 768px) {
.sp_only {
	display: block!important;
}
.pc_only {
	display: none!important;
}
.header_back {
	height: 45px;
}
.header {
	padding: 10px;
}
.header_wrap {
	padding: 0 0px;
}
.text_header {
	display: none;
}
.logo_ribias {
	width: 30%;
}

.tel {
	width: 65%;
}
.text_header2 {
	text-align: center;
	display: block;
	font-size: 11px;
}
.text_header2 br {
	display: none;
}
.text_header2 h2 {
	margin-bottom: 10px;
}

.main_text {
	top: 15px;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
	padding: 50px 20px 60px 20px;
	transform: none;
}
.main_text1,
.main_text2,
.main_text h1 {
	text-align: center;
}
.main_text h1 br {
	display: none;
}
.main_text1 {
	font-size: 17px;
	letter-spacing: -0.15em;
	margin-bottom: 10px;
}
.main_text2 {
	padding: 0 15px;
	margin-bottom: 10px;
	font-size: 3.4375vw;
}


.main_text h1{
	font-size: 9vw;
	letter-spacing: -0.075em;
	line-height: 1.25;
}

.osishi_eco img{
	max-width: 350px;
	margin: 0 auto;
	width: 100%;
	z-index: 2;
	right: 0;
	bottom: 0;
	left: -30px;
	top: auto;
}
.osishi_eco {
	margin: 0 auto;
	max-width: 419px;
	width: 100%;
	height: 650px;
}
.main {
	width: 100%;
	background: url(../images/main_back2.jpg) no-repeat;
	background-size: cover;
	background-position: center;
	overflow: hidden;
}
.kouhyo {
	position: absolute;
	right: 0px;
	left: 55%;
	bottom: 130px;
	z-index: 8;
}
.kouhyo img{
	width: 100%;
	max-width: 180px;
}
.omousikomikotira {
	text-align: center;
	max-width: 300px;
	margin: 0 auto;
	width: 100%;
	padding: 10px 50px;
	left: 0px;
	right: 0;
	bottom: 55px;
}
.omousikomikotira2 {
	text-align: center;
	max-width: 300px;
	margin: 0 auto;
	width: 100%;
	padding: 10px 50px;
	left: 0px;
	right: 0;
	bottom: 10px;
}

.omousikomikotira p,
.omousikomikotira2 p {
	max-width: 200px;
	width: 100%;
	font-size: 18px;
	padding: 10px 20px;
}
.btn_brand a {
	display: inline-block;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	padding: 20px 40px;
	color: white;
	background-color: #ec576c;
	margin-bottom: 0;
	line-height: 1;
	border: 2px solid #FFFFFF;
	box-shadow: 4px 4px 0 1px #FFFFFF;
}
.main_text3 {
	text-align: center;
	font-size: 13px;
	bottom: 145px;
	left: 0px;
	right: 0;
}
.main_text3 span{
	font-size: 18px;
}
.thanks,
.form,
.contact,
.info,
.info_seminar,
.brand,
.interview,
.schedule,
.mission,
.merit,
.solution,
.mawaru,
.massage {
	text-align: center;
	padding: 40px 20px;
}
.thanks_title,
.contact_title,
.info_title,
.info_seminar_title,
.brand_title,
.interview_title,
.schedule_title,
.mission_title,
.merit_title,
.solution_title,
.massage_title {
	max-width: 154px;
	margin-bottom: 15px;
	padding: 0 30px;
}
.info_title {
	width: 100%;
	max-width: 238px;
}
.thanks h3,
.info h3,
.info_seminar h3,
.brand h3,
.interview h3,
.schedule h3,
.mission h3,
.merit h3,
.solution h3,
.massage h3{
	font-size: 27px;
	margin-bottom: 30px;
}
.thanks p,
.info_seminar p,
.schedule p,
.mission p,
.merit p,
.solution p,
.massage p {
	font-size: 15px;
	padding: 0 10px;
}
.thanks br,
.schedule br,
.mission br,
.merit br,
.solution br,
.massage br {
	display: none;
}
.mawaru h3, 
.mawaru h4{
	text-align: center;
	padding: 0 10px;
	
}
.contact h3,
.mawaru h3 {
	font-size: 27px;
}
.mawaru h4 {
	font-size: 25px;
}
.mawaru_koumoku {
	width: 100%;
}
.mawaru_koumoku p {
	line-height: 1.25;
	font-weight: bold;
	text-align: center;
	padding: 15px;
	font-size: 25px;
	background-color: white;
}

.solution_image {
	width: 100%;
	margin-bottom: 20px;
}
.merit_image {
	width: 100%;
	margin-bottom: 20px;
}


.mission_back {
	background: none;
}

.mission_list3,
.mission_list2,
.mission_list1 {
	padding-bottom: 48px;
	width: 100%;
}

.mission_list3 h5,
.mission_list2 h5,
.mission_list1 h5 {
	font-size: 20px;
	margin-bottom: 10px;
}
.mission_list3 h4,
.mission_list2 h4,
.mission_list1 h4 {
	font-size: 27px;
	margin-bottom: 15px;
}
.mission_list3 h4 {
	font-size: 24px;
}
.mission_list3 span {
	letter-spacing: -0.29em;
}
.mission_list3 p,
.mission_list2 p {
	font-size: 18px;
	margin-bottom: 0;
}
.mission_list3 p,
.mission_list2 p,
.mission_list1 p {
	font-size: 18px;
	margin-bottom: 0;
	padding: 0 0px;	
}


.schedule_wrap {
	width: 100%;
}
.schedule_list4,
.schedule_list3,
.schedule_list2,
.schedule_list1 {
	margin-bottom: 13px;
}

.schedule_list_img {
	width: 100%;
}
.schedule_list4_text,
.schedule_list3_text,
.schedule_list2_text,
.schedule_list1_text {
	width: 100%;
	margin: 10px 0 0 0;
}
.schedule_list4_text h5,
.schedule_list3_text h5,
.schedule_list2_text h5,
.schedule_list1_text h5 {
	margin-bottom: 10px;
    font-size: 22px;
}
.schedule_list4 p,
.schedule_list3 p, 
.schedule_list2 p, 
.schedule_list1 p {
	font-size: 17px;
	margin-bottom: 0;
	padding: 0;
}
.schedule_list4_text h5::before,
.schedule_list3_text h5::before,
.schedule_list2_text h5::before,
.schedule_list1_text h5::before {
	margin-right: 15px;
}

.contact_list4,
.contact_list3,
.contact_list2,
.contact_list1 {
	margin-bottom: 13px;
}
.contact_list4_text,
.contact_list3_text,
.contact_list2_text,
.contact_list1_text {
	width: 100%;
	margin: 10px 0 0 0;
}
.contact_list4_text h5,
.contact_list3_text h5,
.contact_list2_text h5,
.contact_list1_text h5 {
	margin-bottom: 10px;
  font-size: 22px;
}
.contact_list4 p,
.contact_list3 p, 
.contact_list2 p, 
.contact_list1 p {
	font-size: 17px;
	margin-bottom: 0;
	padding: 0;
}
.contact_list4_text h5::before,
.contact_list3_text h5::before,
.contact_list2_text h5::before,
.contact_list1_text h5::before {
	margin-right: 15px;
}


.border_hukidashi::after{
  left: 47%;
}
.interview_list {
	width: 100%;
	margin-bottom: 20px;
}
.brand_logo {
	width: 32%;
	margin-bottom: 10px;
}
.brand_logo_none {
	width: 32%;
}
.brand_logo p {
	font-size: 12px;
	line-height: 1/1;
	margin-bottom: 7px;
}
.brand_logo h6 {
	font-size: 15px;
}
.osishi_eco_contact img {
	display: none;
}

.jama {
	width: 200px;
}

.nitiji {
	justify-content: flex-start;
	margin-bottom: 20px;
}
.nittei_title4,
.nittei_title3,
.nittei_title2,
.nittei_title {
	text-align: left;
	width: 100%;
	border-top: none;
	margin-left: 15px;
	height: 30px;
}
.nittei_title2 {
	height: 30px;
}
.nittei_title4,
.nittei_title3 {
	height: 30px;
}
.nittei_title4 p,
.nittei_title3 p,
.nittei_title2 p,
.nittei_title p {
	line-height:  normal;
	vertical-align: normal;
	margin-bottom: 30px;
}
.nittei_title2 p {
	line-height: normal;
}
.nittei_title3 p {
	line-height: normal;
}
.nittei_syosai {
	width: 100%;
}
.nittei_syosai  p {
	margin-bottom: 5px;
	text-align: left;
	font-weight: bold;
}
.nittei_syosai :last-child {
	margin-bottom: 0;
}
.nittei_syosai_wrap {
	padding: 5px 14px;
}

.hiduke_wrap:last-child {
	border-bottom: 1px dotted #747474;	
}


.access_title p {
	font-size: 22px;
	padding: 10px 0;
}

.contact p {
	font-size: 16px;
}


.td1{
    width:100%;
    padding:15px 0 0;
}
.td3{
    width:100%;
}
.form textarea{
	padding: 0px;
    width:100%;
    height:150px;
}

.form p{
    margin-bottom:35px;
}
.form p:last-child{
    margin-bottom:0px;
}

table, tbody, tr, th, td {
	display: block;
}

.submit_box p{
	font-size: 20px;
    padding: 12px 24px;
}
.submit_box4 p,
.submit_box3 p,
.submit_box2 p {
	font-size: 16px;
    padding: 5px 14px;
}
.submit_box_text2::before{
	height: 17px;
	width: 18px;
	bottom: 3px;
	margin-right: 5px;
	background-image: url(../images/homeback.svg);
}
.side2,
.side {
	position: fixed;
	top: 76px;
	right: 0px;
	z-index: 50;
}

.side2 img {
	max-width: 35px;
	width: 100%;
}

.footer p{
	padding: 30px 0 50px;
	font-size: 11px;
}
.form {
	margin-bottom: 200px;
}
.pagetop {
	bottom: 10px;
	right: 10px;
	z-index: 20;
}
.pagetop img{
	width: 100%;
	max-width: 50px;
}

.nittei_table td {
    margin-bottom: 30px;
    font-size: 16px;
}









}



/* Responsive
-----------------------------------------------------------*/
@media screen and (max-width: 470px) {


.main_text2 br {
	display: none;
}

.osishi_eco img{
	margin: 0 auto;
	width: 100%;
	z-index: 2;
	right: 0;
	bottom: 0;
	left: -70px;
	top: auto;
}
.main_text h1 br {
	display: block;
}
.nittei_table td p.hiduke_day {
    font-size: 20px;
	margin-bottom: 5px;
}

.nittei_table td {
    margin-bottom: 20px;
}
.nittei_table td,
.nittei_table th {
	padding: 10px 15px;
}
.hiduke2 {
	margin-bottom: 10px;
}


}









