@charset "utf-8";

/*!
 * common.css : v0.1
 * date : 20170404
 */
/*
@import url('https://fonts.googleapis.com/css?family=Roboto:300,400,500,700,900');
*/
/* Setting-basic
-----------------------------------------------------------*/
body {
  font-family: "游ゴシック体","YuGothic","游ゴシック","Yu Gothic","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",'Meiryo',"ＭＳ Ｐゴシック",'Ubuntu',Helvetica,Arial,sans-serif;
	color: #333333;
	background: #fff;
	line-height: 1.8;
	font-size: 15px;
	-webkit-text-size-adjust: 100%;
	font-weight: 400;
}
.clearfix {
	clear: both;
}
/* Module
-----------------------------------------------------------*/
img {
	border: 0;
	vertical-align: middle;
}
ol,ul {
	list-style: none;
}
p {
/* 	margin: 0 0 20px; */
}
h1,h2,h3,h4,h5,h6 {
	margin: 0;
	line-height: 1.4;
	font-weight: normal;
	font-size: 100%;
}
/*
h1 { font-size: 100%;}
h2 { font-size: 100%;}
h3 { font-size: 100%;}
h4 { font-size: 100%;}
h5 { font-size: 100%;}
h6 { font-size: 100%;}
*/

/* Hypertext Module
-----------------------------------------------------------*/
a:link,
a:visited {
	text-decoration: none;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;

}
a:hover {
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
a {
    color: #333333;
}
.cshover button,
.cshover input,
.cshover a, 
a.cshover{ -webkit-transition:all .3s; transition:all .3s;}
.cshover button:hover,
.cshover input:hover,
.cshover a:hover, 
a.cshover:hover { -webkit-opacity: 0.6; opacity: 0.6; }

/* 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: #ffa41b;}

/* 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-top: 1px solid #828282;
	border-left: 1px solid #828282;
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 85%;
/* 	white-space: nowrap; */
	background: #ffffff;
}
td,th {
	padding: 8px 10px;
	text-align: left;
	line-height: 1.5;
	font-weight: normal;
	border-right: 1px solid #828282;
	border-bottom: 1px solid #828282;
}
thead td,
thead th {
	text-align: center;
	color: #fff;
	background: #343434;
}

/* Forms Module
-----------------------------------------------------------*/
.input_text,
textarea {
	margin-bottom: 5px;
	padding: 10px;
	font-size: 14px;
	border: 1px solid #ccc;
	background: #fff;
	width: 100%;
}
select {
	font-size: 14px;
}
.need:before,
.any:before {
	margin: 0 7px 0 0;
	padding: 1px 3px;
	color: #fff;
	font-size: 11px;
	border-radius: 4px;
}
.need:before {
	content: "任意";
	background: #999;
}
.any:before {
	content: "必須";
	background: #f00;
}
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 100;
  src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.woff2) format('woff2'),
       url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.woff) format('woff'),
       url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.otf) format('opentype');
}





/* js
-----------------------------------------------------------*/

.effect_fadein02,
.effect_fadein {
    overflow: hidden;
    opacity: 0;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    -webkit-transition: 1s;
    -o-transition: 1s;
    transition: 1s;
    -webkit-transform: translate(0,-10px);
    -ms-transform: translate(0,-10px);
    transform: translate(0,-10px);
}
.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);
}
.effect_fadein02.effect_def {
	transition-delay: 0.5s;
}




/* layout
-----------------------------------------------------------*/
.link_btn {
	display: block;
    margin: 0 auto;
    width: 100%;
    max-width: 430px;
    text-align: center;
    font-size: 15px;
    line-height: 1;
    padding: 20px 20px 18px;
    text-align: center;
    color: white;
}
.po_center {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    white-space: nowrap;
}
.po_Ycenter {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0%,-50%);
    -ms-transform: translate(0%,-50%);
    transform: translate(0%,-50%);
    white-space: nowrap;
}
.po_re {
	position: relative;
}
.fo_n {
    font-family: 'Noto Sans Japanese';
}
.fo_l {
	font-family: 'Lato', sans-serif;
}
.fo_o {
	font-family: 'Oswald', sans-serif;
}
.fo_r {
    font-family: 'Raleway', sans-serif;
}
.ob_f {
	-o-object-fit: cover;
    object-fit: cover;
    font-family: 'object-fit: cover;';
    /* -o-object-position: 0% 0%; */
    /* object-position: 0% 0%; */
}
.les01 {
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	text-align: center;
}
.les005 {
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	text-align: center;
}
.opc1:before {
	opacity: 1;
}

heade a {
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
.header_logo {
	position: fixed;
	left: 30px;
	top: 40px;
	z-index: 100;
    width: 115px;
}
.header_logo img {
	width: 100%;
}
.menubar {
	position: fixed;
	top: 0;
	right: 0;
	width: 130px;
	height: 100%;
	left: auto;
}
.menubar ul {
}
.menubar li {
    height: 65px;
    width: 65px;
    position: relative;
}
.menubar li:last-child {
}
.header_contact {
	position: fixed;
	-webkit-transform: rotate(-15deg) translate(10%,-50%);
	    -ms-transform: rotate(-15deg) translate(10%,-50%);
	        transform: rotate(-15deg) translate(10%,-50%);
	width: 50px;
	height: 50px;
	display: block;
	border-radius: 18px;
	z-index: 100;
}
.header_contact {
	left: -25px;
	top: 50%;
	-webkit-transform: rotate(-15deg) translate(10%,-50%);
	    -ms-transform: rotate(-15deg) translate(10%,-50%);
	        transform: rotate(-15deg) translate(10%,-50%);
	background: #333333;
}
.header_contact:hover {
	left: -35px;
	width: 80px;
	-webkit-transform: translate(0,-50%);
	    -ms-transform: translate(0,-50%);
	        transform: translate(0,-50%);
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}

.header_contact img{
	max-width: 50px;
	width: 100px;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	    -ms-transform: translate(-50%,-50%);
	        transform: translate(-50%,-50%);
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
.header_contact img {
    max-width: 25px;
}
.header_contact:hover img {
	-webkit-transform: translate(10%,-45%);
	    -ms-transform: translate(10%,-45%);
	        transform: translate(10%,-45%);
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
header p {
	position: fixed;
	bottom: 50px;
	left: 50px;
	color: #3A3A3A;
	font-size: 10px;
	-ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
	        writing-mode: vertical-rl;
	font-family: 'Lato', sans-serif;
	font-weight: 100;    
}
.menubar a {
	background: #DD282E;
    display: block;
    width: 50px;
    height: 50px;
    border-radius: 18px;
    position: relative;
}
.menubar a:hover {
	width: 56px;
	height: 56px;
}
.menubar_about:hover {
	background: #cb2026;
}
.menubar_case:hover {
	background: #7fb219;
}
.menubar_buy:hover {
    background: #0074b7;
}
.menubar_team:hover {
    background: #e3ca3c;
}
.menubar_guide:hover {
    background: #b5b5b5;
}


a.menubar_case {
	background: #8BBF1F;
}
a.menubar_buy {
	background: #0080C8;
}
a.menubar_team {
	background: #F1D846;
}
a.menubar_guide {
	background: #C8C8C8;
}
.menubar img {
    width: 50px;
    -webkit-transition: 0.25s;
    -o-transition: 0.25s;
    transition: 0.25s;	
}

.instagram {
    position: fixed;
    bottom: 130px;
    right: 48px;
    width: 30px;
    -webkit-transition: 0.25s;
    -o-transition: 0.25s;
    transition: 0.25s;
}

.instagram img{
    -webkit-transition: 0.25s;
    -o-transition: 0.25s;
    transition: 0.25s;
}

a.instagram:hover img{
    transform: scale(1.2, 1.2);
    opacity: 0.6;
    -webkit-transition: 0.25s;
    -o-transition: 0.25s;
    transition: 0.25s;
}

.toppage{
	position: fixed;
	right: 40px;
	bottom: 30px;
	display: block;
	height: 60px;
	width: 40px;
}
.toppage:hover {
	bottom: 35px;
}
.toppage img {
	max-width: 10px;
	width: 100%;
    display: block;
    margin: 0 auto;
}

.body_wrap {
	padding: 0 130px;
}
.bk {
	background-color: #F6F6F6;
} 
.bk_r {
	background-color: #dd282e;
}
.bk_g {
	background-color: #8bbf1f;
}
.bk_b {
	background-color: #0080c8;
}
.bk_y {
	background-color: #f1d846;
}
.bk_gry {
	background-color: #c8c8c8;
}
.bk_gry2 {
	background: #ededed;
}
.bk_w {
	background: white;
}

a.bk_r:hover {
	background-color: #cb2026;
}
a.bk_g:hover {
	background-color: #7fb219;
}
a.bk_b:hover {
	background-color: #0074b7;
}
a.bk_y:hover {
	background-color: #e3ca3c;
}
a.bk_gry:hover {
	background-color: #b5b5b5;
}
.bk_y2 {
	background-color: #f4c714;
}
a.bk_y2:hover {
	background-color: #fcda51;
}
.co_r {
	color: #dd282e;
}
.co_g {
	color: #8bbf1f;
}
.co_b {
	color: #0080c8;
}
.co_y {
	color: #f1d846;
}
.co_gry {
	color: #c8c8c8;
}
.co_w {
	color: white;
}
.bk_b02 {
	background-color: rgba(0,128,200,0.2);
}
.bk_r02 {
	background-color: rgba(232,59,52,0.2);
}
.bk_y02 {
	background-color: rgba(255,237,0,0.2);
}
.bk_g02 {
	background-color: rgba(139,191,31,0.2);
}
.co_y2 {
	color: #f4c714;
}


.border {
	height: 100%;
	position: absolute;
	top: 0;
	width: 1px;	
	-webkit-transition: 0.5s;	
	-o-transition: 0.5s;	
	transition: 0.5s;
    background: rgba(200,200,200,0.3);
    right: 10%;
}


.btn_menu {
    display: none;
}
.btn_header_text {
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 101;
    width: 100%;
    height: 100%;
}





.body-index{ overflow: hidden; height: 100vh; opacity: 0;}
#ind_animContainer{ width: 100%; height: 100vh; background: #fbfbfb;  overflow: hidden; position: fixed; top: 0; left: 0; z-index: 999; display: none;}
#ind_anmLogo { padding: 16px; }
    #ind_anmLogo .header_logo{ z-index: 1000;}
    #ind_anmLogo .header_logo2{ position: fixed; z-index: 1000; left: 50%; margin-left: -50px; }
#ind_anmSkip{ position: fixed; top: 23px; right: 25px; line-height: 1; z-index: 1001; cursor: pointer}
#ind_anmSkip span { position:relative; display: inline-block; padding-right: 5px;-webkit-transition: 0.3s;transition: 0.3s;}
#ind_anmSkip span:after {
	content: "";
	display: inline-block;
	background: url(../images/common/arrows1.svg) no-repeat;
	background-size: contain;
	width: 19px;
	height: 5px;
	position: relative;
	top: 40%; 
    right: -5px;
}
#ind_anmSkip span:hover {
	 -webkit-transform: translate(5px,0);
            transform: translate(5px,0);
}
#ind_animation{ position: absolute; bottom: 20%; left: 50%; margin-left: -210px; }
#ind_animation img{}
#ind_after-anim, .main{ overflow: hidden;}

.main {
	background: url(../images/index/main.jpg) no-repeat center center;
	background-size: cover;
	background-attachment: fixed; position: relative;
    
}
.main img {
    width: 100%;
    height: 100%;
	-o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    font-family: 'object-fit: cover; object-position: bottom;';
}
.main .ttl-index-h1{ color: #fff; font-size: 10px; text-align: center; position: absolute; top: -20px; width: 100%; z-index: 1; }
.main .ttl-h1 {
    position: absolute; top: 50%;
	text-align: center;
	font-size: 60px; 
	letter-spacing: 0.07em;
	width: 100%; margin: 0 auto; 
	line-height: 1;
    text-indent: 0.07em;
    padding-bottom: 3px;
}
.main .ttl-h1 br {
	display: none;
}
.scroll_to_continue a {
    position: absolute;
    z-index: 2;
    left: 50%;
    bottom: 35px;
    -webkit-transform: translate(-50%,0);
        -ms-transform: translate(-50%,0);
            transform: translate(-50%,0);
    letter-spacing: 0.05em;
    font-size: 14px;
    color: white;
    text-align: center;
    font-family: 'Raleway', sans-serif;
}
.scroll_to_continue span {
    position: absolute;
    bottom: 10px;
    z-index: 2;
    left: 0;
    right: 0;
    margin: auto;
    width: 1px;
    height: 30px;
    border-left: 2px solid #fff;
    -webkit-animation: sdb 2s infinite;
    animation: sdb 2s infinite;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    -webkit-transform: rotate(0) translate(0, 0);
            transform: rotate(0) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(0) translate(0, 10px);
            transform: rotate(0) translate(0, 10px);
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    -webkit-transform: rotate(0) translate(0, 0);
            transform: rotate(0) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(0) translate(0, 10px);
            transform: rotate(0) translate(0, 10px);
    opacity: 0;
  }
}


.index_about {
	padding: 270px 0 120px;
	position: relative;
}
.about_main h1,
.index_about h2 {
	font-family: 'Noto Sans Japanese';
	font-size: 64px;
	color: #DD282E;
	letter-spacing: 0.1em;
	-webkit-transform: translate(-10%,0);
	    -ms-transform: translate(-10%,0);
	        transform: translate(-10%,0);
	text-align: center;
	margin-bottom: 190px;
}
.about_main h1 span,
.index_about h2 span {
	position: relative;
}
.about_main h1 span:before,
.index_about h2 span:before {
	content: "マル";
	font-size: 25px;
	display: inline-block;
    position: absolute;
    top: -20px;
    left: 3px;
}
.about_main h1:before,
.index_about h2:before {
	content: "";
	display: inline-block;
	background: url(../images/about/question.svg) no-repeat;
	width: 105px;
	height: 204px;
	background-size: contain;
	margin-right: 75px;
	position: relative;
	top: 43px;
}
.index_about_content {
	margin: 0 auto;
	width: 100%;
	padding: 0 55px;
}
.index_about_content_box1 {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    height: 440px;
}
.index_about_content_box1 img {
    width: 60%;
    max-width: 650px;
}
.index_about_content_box1 p {
	font-size: 18px;
	line-height: 1.75;
	position: relative;
	top: 10px;
	width: 38%;
}
.index_about_content_box2 {
	height: 646px;
}
.index_about_content_box2 img {
	position: absolute;
    top: -170px;
    right: 0;
    max-width: 430px;
    width: 39%;
}
.index_about_content_box3 {
	height: 520px;
}
.index_about_content_box3 img {
	position: absolute;
    top: -390px;
    left: 50%;
    -webkit-transform: translate(-100%,0);
        -ms-transform: translate(-100%,0);
            transform: translate(-100%,0);
    max-width: 346px;
    width: 50%;
}
.index_about_content_box3 p {
    font-size: 18px;
    line-height: 1.75;
    position: absolute;
    left: 120px;
    top: 50px;
}
.index_about_content_box1,
.index_about_content_box2,
.index_about_content_box3 {
	position: relative;
    width: 100%;
    max-width: 1130px;
    margin: 0 auto;
}
.index_about_content_box1 img,
.index_about_content_box2 img,
.index_about_content_box3 img {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: 'object-fit: cover;';
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    height: 100%;
}

.index_about_content a {
	display: block;
	padding: 20px 20px 18px;
	color: white;
	line-height: 1;
	width: 100%;
	max-width: 430px;
	text-align: center;
    position: absolute;
    top: 225px;
    right: 0;
    font-size: 15px;
    letter-spacing: 0.07em;
}
#about .border,
.index_about .border {
	background: rgba(221,40,46,0.3);
	left: 10%;
}



.index_case {
	position: relative;
}
.index_case_main {
	width: 100%;
	background: url(../images/index/main2.jpg) no-repeat center center;
	background-size: cover;
	height: 845px;
	position: relative;
	background-attachment: fixed;
}
.index_case_main .main_back {
	width: 100%;
	background: rgba(139, 191,31,0.3);
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.index_case_main h2 {
	color: white;
	font-size: 100px;
	position: absolute;
	left: 27%;
	top: 50%;
	-webkit-transform: translate(0,-70%);
	    -ms-transform: translate(0,-70%);
	        transform: translate(0,-70%);
	-webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
	z-index: 2;
}
.index_case_main h2:before {
	content: "";
	display: inline-block;
	background: url(../images/common/case2.svg) no-repeat;
	width: 97px;
	height: 88px;
	margin-bottom: 45px;
	position: relative;
	left: 10px;
}
.index_case_content {
	position: relative;
	padding: 180px 0;
}
.index_case_content ul {
	margin-bottom: 50px;
}
.index_case_content ul li img{
	width: 100%;
	height: 400px;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: 'object-fit: cover;';
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    -webkit-box-shadow: 20px 20px 0px 0px #E7E5A1;
            box-shadow: 20px 20px 0px 0px #E7E5A1;
}
.slidershadow {
	height: 420px;
	width: 100%;
	padding: 0 20px 20px 20px;
}


#case_content .border,
#case .border,
.index_case_content .border {
	background: rgba(139, 191,31,0.3);
	left: 30%;
	top: 0;
	z-index: 0;
}


.index_buy {
	background: #ECF5FE;
	width: 100%;
	height: 1374px;
/* 	padding: 300px 0; */
	position: relative;
/*     border-top: 2px solid white; */
}
.index_buy_content {
	position: relative;
	margin: 0 auto;
	width: 90%;
	max-width: 1000px;
	height: 1374px;
}
.index_buy h2 {
	font-family: 'Noto Sans Japanese';
	font-size: 100px;
	letter-spacing: 0.1em;
	position: absolute;
	right: 70px;
    top: 170px;
}
#contact .main_title:before,
#guide .main_title:before,
#team .main_title:before,
#buy .main_title:before,
.index_buy h2:before {
	content: "";
	display: inline-block;
	background: url(../images/common/buy_b.svg) no-repeat;
	width: 121px;
	height: 115px;
    position: absolute;
    top: 180px;
    left: 22%;
}
.index_buy img {
	position: absolute;
	left: 0;
    top: 400px;
	max-width: 800px;
	width: 60%;
	height: 650px;
	-o-object-fit: cover;
    object-fit: cover;
    font-family: 'object-fit: cover;';
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    border-radius: 0 325px 325px 0;
    z-index: 1;
}
.index_buy_content_box {
	padding: 50px 50px 58px;
	background: white;
	position: absolute;
	top: 590px;
	right: 0;
	max-width: 350px;
    z-index: 2;
}
.index_buy_content_box h3,
.index_buy_content_box p {
	display: inline-block;
}
.index_buy_content_box h3 {
	font-family: 'Noto Sans Japanese';
	font-size: 30px;
	line-height: 1.5;
	margin-bottom: 40px;
	letter-spacing: 0.1em;
}
.index_buy_content_box p {
	font-size: 15px;
	line-height: 1.75;
	margin-bottom: 10px;
}
.index_buy_content a {
	position: absolute;
	bottom: 300px;
    left: 50%;
    -webkit-transform: translate(-50%,0);
        -ms-transform: translate(-50%,0);
            transform: translate(-50%,0);
	z-index: 2;
	display: inline-block;
	width: 100%;
	max-width: 430px;
	font-size: 15px;
	color: white;
	line-height: 1;
    margin: 0 auto;
    padding: 20px 20px 18px;
    text-align: center;
}
#buy .border,
.index_buy .border {
    background: rgba(0,128,200,0.3);
    left: 50%;
}





.index_team {
	position: relative;
}
.index_team_content1 {
	max-width: 1020px;
	width: 100%;
	margin: 0 auto;
	height: 428px;
	position: relative;
}
.index_team_content1 h2 {
    font-size: 100px;
    letter-spacing: 0.02em;
    position: absolute;
    left: 0;
    top: 210px;
    padding-left: 10px;
}
.index_team_content1:before {
	content: "";
	display: inline-block;
	background: url(../images/team/team_y.svg) no-repeat;
	background-size: contain;
	width: 90px;
	height: 75px;
	position: absolute;
	top: 100px;
	right: 217px;
}
.index_team_content1 p {
	max-width: 400px;
	width: 100%;
	position: absolute;
	top: 237px;
	right: 100px;
}
.index_team_content2 {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	max-width: 1240px;
	width: 100%;
	padding: 0 40px;
	position: relative;
	margin: 0 auto;
	margin-bottom: 120px;
}
.index_team_content5 {
	height: 170px;
}
.index_team_content5 li {
	position: relative;
}
.index_team_content2 > div {
	width: 19%;
	position: relative;
	max-width: 200px;
}
.index_team_content5 li:nth-child(odd),
.index_team_content2 > div:nth-child(odd) {
	bottom: 15px;
}
.index_team_content5 li:nth-child(even),
.index_team_content2 > div:nth-child(even) {
	top: 15px;
}
.index_team_content5 a,
.team_list_img,
.index_team_content2 a {
	width: 100%;
	border-radius: 100%;
	display: block;
    overflow: hidden;
}
.index_team_content5 img,
.index_team_content2 img {
	width: 100%;
    max-width: 200px;
    max-height: 200px;
    display: block;
}
.index_team_content5 img {
    max-width: 100%;
    max-height: 100%;
}
.index_team_content5 li {
	padding: 10px;
}
.idea:before,
.key:before,
.nami:before,
.construction:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 50%;
    bottom: -40px;
    -webkit-transform: translate(-50%,50%);
        -ms-transform: translate(-50%,50%);
            transform: translate(-50%,50%);
}
.idea:before {
	background: url(../images/team/idea.svg) no-repeat;
	background-size: contain;
	width: 15px;
	height: 30px;
}
.key:before {
	background: url(../images/team/key.svg) no-repeat;
	background-size: contain;
	width: 25px;
	height: 10px;
}
.nami:before {
	background: url(../images/team/nami.svg) no-repeat;
	background-size: contain;
	width: 20px;
	height: 16px;
}
.construction:before {
	background: url(../images/team/construction.svg) no-repeat;
	background-size: contain;
	width: 38.5px;
	height: 27px;
}

.index_team_content3 {
	margin: 0 auto;
	width: 100%;
}
.index_team_content3 a{
    display: block;
    width: 100%;
    max-width: 430px;
    font-size: 15px;
    color: white;
    line-height: 1;
    margin: 0 auto;
    padding: 20px 20px 18px;
    text-align: center;
    margin-bottom: 91px;
}
.index_contact_faq,
.index_team_content4 {
	margin: 0 auto;
    max-width: 1240px;
    width: 100%;
    height: 116px;
    position: relative;
}
.about_faq a,
.index_contact_faq a,
.index_team_content4 a{
	font-size: 30px;
	position: absolute;
	right: 20px;
	top: 0;
}
.loan_simulation p:before,
.about_faq a:before,
.index_contact_faq a:before ,
.index_team_content4 a:before {
	content: "";
	display: inline-block;
	background: url(../images/common/arrows1.svg) no-repeat;
	background-size: contain;
	width: 38px;
	height: 10px;
	position: relative;
	top: -9px;
    right: 10px;
}
.about_faq a:hover,
.index_team_content4 a:hover {
	right: 15px;
}
#team .border,
.index_team .border {
    background: rgba(241,216,70,0.3);
    right: 30%;
}


.index_instagramwrap { padding: 30px; background: #fff;}
.index_instagram_ttl{ text-align: center; font-size: 1.7em; font-weight: bold; padding: 20px 0 25px; }
.index_instagram_ttl img{  vertical-align: middle; margin-right: 10px; }
.index_instagramwrap ul{ display: flex; flex-wrap:wrap;  margin-left: -5px;}
.index_instagramwrap li{ width: calc(20% - 5px); margin-left: 5px; margin-bottom: 5px;}
.index_instagramwrap li a { display: block; padding-top: 100%;}
.index_instagramwrap li a:hover{ transform: scale(0.97);}

@media screen and (max-width: 1000px) {
.index_instagramwrap li{ width: calc(33.3% - 5px); }
.index_instagramwrap li:nth-child(10){ display: none;}
}
@media screen and (max-width: 750px) {
.index_instagramwrap { padding: 30px 50px 50px;}
}
@media screen and (max-width: 400px) {
.index_instagramwrap li{ width: calc(50% - 5px); }
.index_instagramwrap li:nth-child(9){ display: none;}
}




.index_contact {
	position: relative;
	background: url(../images/index/main_g.jpg) no-repeat center center;
	background-size: cover;
	width: 100%;
	height: 845px;
	background-attachment: fixed;
}
.index_contact_content {
	-webkit-transform: translate(-50%,-48%);
	    -ms-transform: translate(-50%,-48%);
	        transform: translate(-50%,-48%);
	text-align: center;
	width: 100%;
	max-width: 450px;
	height: 450px;
	border-radius: 100%;
	background: white;
	z-index: 1;
}
.index_contact_content_text {
	width: 100%;
	-webkit-transform: translate(-50%,-48%);
    -ms-transform: translate(-50%,-48%);
    transform: translate(-50%,-48%);
}
.index_contact_content_text p {
	font-size: 16px;
	margin-bottom: 25px;
}
.index_contact_tel {
	pointer-events: none;
	display: block;
	width: 100%;
	margin: 0 auto;
	max-width: 381px;
	height: 60px;
	margin-bottom: 15px;
}
.index_contact_tel img {
	width: 100%;
	max-width: 381px;
	height: 60px;
}
.index_contact_content_text span {
	display: block;
	font-size: 14px;
	margin-bottom: 30px;
}
.index_contact_mail {
	font-size: 17px;
	letter-spacing: 0.05em;
	padding: 13px;
	width: 100%;
	max-width: 240px;
	color: white;
	display: block;
	margin: 0 auto;
}
.index_contact_mail:before {
	content: "";
	display: inline-block;
	background: url(../images/common/mail.svg) no-repeat;
	width: 18px;
	height: 13px;
	margin-right: 12px;
}
.index_contact_faq a{
	left: 50px;
	right: auto;
	top: auto;
	bottom: 0;
	color: white;
	z-index: 1;
}
.index_contact_faq {
	height: auto;
    bottom: -800px;
}
.index_contact_faq a:before {
	background: url(../images/common/arrows1_w.svg) no-repeat;
	background-size: contain;
}
.index_contact_faq a:hover {
	left: 55px;
}
footer {
	padding: 100px 30px 120px;
	margin: 0 auto;
	text-align: center;
}
.footer_logo {
	display: block; 
	margin: 0 auto 100px; 
}
.footer_logo img{
	max-width: 246px;
	width: 100%;
}
footer ul {
	-ms-flex-pack: distribute;
	    justify-content: space-around;
	max-width: 600px;
	width: 100%;
	margin: 0 auto;
}
footer ul li {
    font-family: 'Raleway', sans-serif;
	font-size: 12px;
	letter-spacing: 0.05em;
}

footer ul li a {
	width: calc(100% / 9);
    margin-right: 10px;
}
footer ul li:last-child a {
    margin-right: 0;	
}


/* about アバウト*/


.about_wrap {
	position: relative;
}
.company_overview,
.about_renovation,
.about_omoi,
.about_logo,
.about_main {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
	padding: 50px 40px;
}

.about_main h1 {
	font-size: 44.8px;
	-webkit-transform: translate(0,0);
	    -ms-transform: translate(0,0);
	        transform: translate(0,0);
	text-align: left;
	margin-bottom: 100px;
	margin-top: 20px;
}
.about_main h1:before {
	width: 73px;
    height: 142px;
	margin-right: 48px;
    top: 33px;
}
.about_main h1 span:before {
	font-size: 19px;
	letter-spacing: -0.1em;
}
.about_renovation_text h4,
.about_main p{
    font-size: 30px;
    padding-left: 4.1em;
    letter-spacing: 0.1em; margin-bottom: 100px;
}
.about_logo svg{
	display: block;
	margin: 0 auto;
	margin-bottom: 30px;
	margin-top: 0px;
}
.about_logo p {
	text-align: center;
	font-size: 30px;
	letter-spacing: 0.07em;
	text-indent: 0.07em;
	margin-bottom: 200px;
}



.about_main { min-height: 110vh; }
.about_logo { min-height: 70vh; }
.about_logo .st0,
.about_logo .st1,
.about_logo .st2,
.about_logo .st3,
.about_logo .st4{ opacity:0; -webkit-transition: 0.3s; transition: 0.3s;}


.about_logo.effect_logodef .st0{ /*blue*/ 
    -webkit-animation: aboutlogofadeIn 0.5s 1.4s forwards ease-in;
    animation: aboutlogofadeIn 0.5s 1.4s forwards ease-in;
}
.about_logo.effect_logodef .st1{/*red*/ 
    -webkit-animation: aboutlogofadeIn 0.5s 0.6s forwards ease-in;
    animation: aboutlogofadeIn 0.5s 0.6s forwards ease-in;
}
.about_logo.effect_logodef .st2{/*green*/ 
    -webkit-animation: aboutlogofadeIn 0.5s 1s forwards ease-in;
    animation: aboutlogofadeIn 0.5s 1s forwards ease-in;
}
.about_logo.effect_logodef .st3{
    -webkit-animation: aboutlogofadeIn 0.5s 2s forwards ease-in;
    animation: aboutlogofadeIn 0.5s 2s forwards ease-in;
}
.about_logo.effect_logodef .st4{
    -webkit-animation: aboutlogofadeIn 0.5s 3s forwards ease-in;
    animation: aboutlogofadeIn 0.5s 3s forwards ease-in;
}
.about_logo p { min-height: 1.5em;}
.about_logo p span{ display: block; display: none;}
.about_logo p span.elm01{}
.about_logo p span.elm02{ }



@-webkit-keyframes aboutlogofadeIn {
    0% {
        opacity:0;
    }
    100% {
        opacity:1;
    }
}
@keyframes aboutlogofadeIn {
    0% {
        opacity:0;
    }
    100% {
        opacity:1;
    }
}



.about_omoi {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.about_omoi_box1 {
	width: 48%;
}
.about_omoi_box2 {
	width: 46.75%;
}

.company_overview h3,
.about_renovation_main h3,
.about_omoi_box1 h3 {
    font-family: 'Noto Sans Japanese';
    font-size: 40px;
    letter-spacing: 0.1em;
    margin-bottom: 40px;
    line-height: 1.25;
}
.about_renovation_main p,
.about_omoi_box1 p {
	font-size: 16px;
	line-height: 1.88;
}
.about_omoi_box2 img {
	max-width: 350px;
	width: 100%;
	margin-top: 10px;
}
.about_omoi_box2 p {
	font-size: 22px;
}
.about_omoi_box2 span {
	font-size: 14px;
}
.eco_read {
	margin-left: 10px;
}
.about_renovation {
	padding: 100px 40px 75px;
}
.about_renovation_main {
	margin-bottom: 75px;
}
.about_renovation_main h3 {
    margin-bottom: 50px;
}
.about_renovation_text h4 {
	padding-left: 0;
	margin-bottom: 10px;
}
.about_renovation_text {
	margin-bottom: 65px;
}
.company_overview_wrap {
	background: #ededed;
}
.company_overview {
	padding: 100px 40px 150px;
}
.about_img {
	width: 100%;
	max-width: 1050px;
	margin-bottom: 180px;
}
.company_overview h3 {
	margin-bottom: 50px;
}
.company_overview table {
	border-top: 0;
    border-left: 0;
    font-size: 14px;
    background: none;
    border-spacing: 0 2px;
    border-collapse: inherit;
}
.company_overview table th,
.company_overview table td {
	border-right: 0;
    border-bottom: 0;
    padding: 20px 10px 17px;
    line-height: 1.75;
}
.company_overview table tr {
	margin-bottom: 2px;
	background: #ffffff;
}
.company_overview table th {
	width: 19%;
    padding-left: 50px;
    vertical-align: initial;
}
.company_overview table td {
	width: 81%;
}
iframe {
	width: 100%;
	height: 500px;
	border: none;
	margin-bottom: 50px;
}
#map1 {
	width: 100%;
	height: 500px;
	border: none;
	margin-bottom: 50px;
}
.about_faq {
    text-align: center;
    margin: 0 auto;
}
.about_faq a {
	position: relative;
	right: 0;
	margin-bottom: 50px;
    display: inline-block;
}
.about_faq a:hover {
	right: -5px;
}
.contact_tel {
	text-align: center;
	padding: 76px 40px;
}
.contact_tel h5 {
	font-size: 16px;
	margin-bottom: 30px;
}
.contact_tel h5:after,
.contact_tel h5:before {
	content: "";
	display: inline-block;
	background: #cccccc;
	width: 38px;
	height: 1px;
	position: relative;
    top: -5px;
    left: -15px;
}
.contact_tel h5:after {
    left: 5px;
}

.contact_tel_a,
.contact_tel img {
	max-width: 393px;
	width: 100%;
	margin-bottom: 15px;
}
.contact_tel_a {
    pointer-events: none;
    display: inline-block;
    margin-bottom: 0;
}
.contact_tel p {
	font-size: 14px;
	margin-bottom: 30px;
}

	.error_box { position: relative ;z-index: 1;
		background:#FFF;
		border:1px solid #e83b34;
		color:#e83b34;
		display:none;
		margin:0px 0px 50px 0px;
		padding:8px 16px;
	}
	.success_box {
		background:#FFF;
		border:1px solid #598800;
		color:#598800;
		display:none;
		margin:0px 0px 50px 0px;
		padding:8px 16px;
	}

	.error_box-disp{
		display:block !important;
	}
	.success_box-disp {
		display:block !important;
	}



/* case 事例*/

.case_main {
	width: 100%;
	max-width: 880px;
	margin: 0 auto;
	padding: 100px 40px;
}

.main_title {
	text-align: center;
	font-size: 70px;
}
.main_title:before,
.main_title:before {
	content: "";
	display: inline-block;
	background: url(../images/common/case_g.svg) no-repeat;
	background-size: contain;
	width: 68px;
	height: 62px;
	margin-right: 28px;
	position: relative;
	top: 3px;
}
.case_main_list {
	padding: 100px 0;
}
.case_main_list_box_img {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
}
.case_main_list_box {
	margin-bottom: 150px;
}
.case_main_list_box:last-child {
	margin-bottom: 0;
}
.case_main_list_box img {
	width: 100%;
    max-width: 700px;
    height: 380px;
    margin: 0 auto;
    display: block;
}
.case_main_list_text {
	position: absolute;
	right: 0;
	bottom: -70px;
	background: white;
	padding: 46px 50px;
    width: 100%;
    max-width: 350px;
}
.case_main_list_text h3 {
	font-size: 30px;
	letter-spacing: 0.1em;
	line-height: 1.25;
	margin-bottom: 28px;
}
.b_Shop .case_main_list_text h3{ font-size: 26px;}
.b_Shop .case_main_list_text { background: #eee;}


.case_main_list_text p {
	left: 25px;
	font-size: 14px;
	line-height: 1.5;
}
.case_main_list_btn {
	width: 100%;
	max-width: 200px;
	padding: 20px;
	text-align: center;
	color: white;
	line-height: 1;
	background: #8bbf1f;
	font-size: 15px;
	letter-spacing: 0.07em;
	text-indent: 0.07em;
	top: auto;
}

.case_content {
	width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: 100px 40px;
}
.content_title {
	font-size: 50px;
	text-align: center;
}
#case_content .main_title {
	font-size: 35px;
	margin-bottom: 10px;
}
#case_content .main_title:before {
    width: 35px;
    height: 32px;
    margin-right: 15px;
    top: 1px;
}
.case_content_date {
	font-size: 20px;
    font-style: oblique;
    margin-bottom: 50px;
}
.case_content_img {
	width: 100%;
	height: 514px;
	margin-bottom: 75px;
}
.case_content_text {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	font-size: 14px;
}

.case_content_text_description1 {
	width: 50%;
}
.case_content_text_description2 {
	width: 39%;
}
div.befoaf,
div.case_content_box {
	margin-bottom: 50px;
}
.case_content_box.wrap_1000 {
    padding: 0 40px;
}
.befoaf_text {
	font-size: 22px;
	line-height: 1;
	margin-bottom: 30px;
	text-align: center;
}
#case_content .wrap_1000 {
    padding-bottom: 200px;
}
.case_schedule_wrap,
.befoaf_wrap,
.before_wrap,
.thumb-item-nav,
.thumb-item {
	max-width: 800px;
	width: 100%;
	margin: 0 auto;
}
.thumb-item-nav {
	max-width: 810px;
}
.thumb-item {
	margin-bottom: 20px;
}
.thumb-item-nav img,
.thumb-item img {
	 max-width: 100%;
     height: auto;
}
.thumb-item-nav li {
	margin: 0 5px;
	background: black;
}
.thumb-item-nav img {
	height: 80px;
	-webkit-transition: 0.25s;
	-o-transition: 0.25s;
	transition: 0.25s;
	opacity: 0.65;
}
.wrap_1050 {
	width: 100%;
    max-width: 1130px;
    margin: 0 auto;
    padding: 0 40px;
}
.wrap_1000 {
	width: 100%;
    max-width: 1080px;
    margin: 0 auto;
    padding: 0 40px;
}
.wrap_900 {
	width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: 0 40px;
}
.wrap_750 {
	width: 100%;
    max-width: 830px;
    margin: 0 auto;
    padding: 100px 40px 200px;
}

.thumb-item-nav li.slick-current img {
	opacity: 1;
	-webkit-transition: 0.25s;
	-o-transition: 0.25s;
	transition: 0.25s;
}
.befoaf_wrap,
.before_wrap {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.before_wrap li {
	width: 24.5%;
}
.before_wrap.elm5 li {
	width: 19.5%;
}
.before_wrap img {
	/*height: 112px;*/
}
.befoaf_wrap img {
	margin-bottom: 20px;
}
.befoaf_wrap li {
	width: 44.3%;
}
.content_wrap {
	padding: 30px 20px 50px;
	margin-bottom: 50px;
}
.befoaf_wrap .befoaf_text {
	margin-bottom: 0;
}
.case_schedule.content_wrap {
	padding: 60px 20px 50px;
	margin-bottom: 100px;
}
.wrap_800 {
	width: 100%;
    max-width: 880px;
    margin: 0 auto;
    padding: 100px 40px;
}



#case_navtab{ padding: 30px 10px 0;}
#case_navtab ul{ flex-wrap: wrap; justify-content: center; }
#case_navtab li {width: 33.33%; max-width: 140px;}
#case_navtab li a {
	display: block; 
	padding: 10px 10px ; margin: 0 2px;
	text-align: center;
	color: #8bbf1f;
	line-height: 1;
	background: #fff; border: 1px solid #8bbf1f;
	font-size: 15px;
	letter-spacing: 0.07em;
	text-indent: 0.07em; box-sizing: border-box; 
}
#case_navtab li a.is_active {
	color: white;
	background: #8bbf1f; border: 1px solid #8bbf1f;
}


.case_videowrap{margin-bottom: 75px;}
.case_videowrap video{ width: 100%;}
@media screen and (max-width: 768px) {
.case_videowrap { margin: 0 -40px 40px; }
}


/* buy 買う*/

#buy .bk {
	background: #ecf5fe;
}
#buy footer.bk {
	background: #F6F6F6;
}

#contact .main_title,
#guide .main_title,
#team .main_title,
#buy .main_title {
	font-size: 80px;
	margin-bottom: 70px;
}
#contact .main_title:before,
#guide .main_title:before,
#team .main_title:before,
#buy .main_title:before {
    width: 108px;
    height: 114px;
    position: absolute;
    top: 40px;
    left: auto;
    right: 35px;
}
#thanks .wrap_900,
#check .wrap_900,
#contact .wrap_900,
#guide .wrap_900,
#team .wrap_900,
#buy .wrap_1000 {
	padding: 100px 40px 200px;
}
#buy .content_wrap {
	padding: 50px 20px;
    margin-bottom: 20px;
}
.content_place {
	text-align: center;
	font-size: 14px;
	color: #666666;
	margin-bottom: 50px;
}
.buy_box_wrap {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 20px;
}

.buy_box {
	width: 49%;
	padding: 50px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.buy_box img {
	width: 100%;
	max-width: 390px;
	display: block;
    margin: 0 auto;
}
.buy_box p {
	font-size: 14px;
	margin-bottom: 57px;
}
.link_btn3,
.link_btn2 {
	display: block;
	width: 100%;
	padding: 30px;
	margin-bottom: 10px;
	font-size: 22px;
}
.link_btn3 span,
.link_btn2 span {
	padding-left: 60px;
}
.link_btn3 span:before,
.link_btn2 span:before {
	content: "";
	display: inline-block;
	background: url(../images/common/case_g.svg) no-repeat;
	background-size: contain;
	width: 45px;
	height: 42px;
	position: absolute;
	left: 0;
    bottom: -2px;
}
.link_btn3 span:before {
	background: url(../images/common/buy_b.svg) no-repeat;
	background-size: contain;
	width: 48px;
	height: 48px;
    bottom: -8px;
}
.link_btn3 {
	margin-bottom: 0;
}
.buy_box table {
	border: 0;
}
.buy_box tr {
	border-bottom: 1px solid #cccccc;
}
.buy_box th,
.buy_box td {
	font-size: 14px;
	padding: 12px 0;
	border-right: 0;
    border-bottom: 0;
}
.buy_box th {
	width: 26%;
	padding-right: 10px;
	vertical-align: baseline;
}
.buy_box td {
	width: 74%;
}
.buy_table .buy_box {
	width: 50%;
}
.buy_table .buy_box:nth-child(1) {
	padding: 50px 30px 50px 50px;
}
.buy_table .buy_box:nth-child(2) {
	padding: 50px 50px 50px 30px;
}


/* team チーム*/

#team .main_title:before {
	background: url(../images/team/team_y.svg) no-repeat;
	background-size: contain;
}
.team_description {
	font-size: 16px;
	margin-bottom: 50px;
}
.team_box_wrap {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 180px;
}
.team_box {
	width: 48%;
}
.team_box_img {
	width: 100%;
	max-width: 366px;
    height: 366px;
    margin: 0 auto;
    margin-bottom: 40px;
}
.team_box img {
	max-width: 336px;
	width: 94%;
	max-height: 336px;
    height: 94%; max-height: 336px;
    width: 100%;
	border-radius: 50%;
	margin: 0 auto;
    display: block;
	z-index: 1;
    -webkit-transform: translate(-50%,-50.35%);
        -ms-transform: translate(-50%,-50.35%);
            transform: translate(-50%,-50.35%);
 
}
.team_box svg {
	z-index: 2; width: 100%;
	position: relative;
}
.team_box .effect_def svg {
	-webkit-animation: hello 0.5s ease-in forwards;
    animation: hello 0.5s ease-in forwards;
	stroke-dasharray: 915;
}
.team_box:nth-child(2) .effect_def svg {
	animation-delay: 0.5s;
}
@-webkit-keyframes hello {
 0% {
 stroke-width:2;
 stroke-dashoffset: 915;
 fill:transparent; /*透過*/
 opacity: 0;
}
 50% {
 fill:transparent; /*透過*/
}
 100% {
 stroke-width:6.2909;
 stroke-dashoffset: 0;
 opacity: 1;
}
}
@keyframes hello {
 0% {
 stroke-width:2;
 stroke-dashoffset: 915;
 fill:transparent; /*透過*/
 opacity: 0;
}
 50% {
 fill:transparent; /*透過*/
}
 100% {
 stroke-width:6.2909;
 stroke-dashoffset: 0;
 opacity: 1;
}
}


.circle2,
.circle1 {
	fill:none;
	stroke:#E92214;
	stroke-linecap:square;
	stroke-miterlimit:10;
}
.circle2 {
	stroke:#8bbf1f;
}
.team_list_img {
	max-width: 160px;
	width: 100%;
	margin-bottom: 16px;
}
.team_list_box li {
	padding: 0 15px;
}
.team_list_box a {
	max-width: 160px;
	width: 100%;
	border-radius: 100%;
	display: block;
	margin: 0 auto;
}
.team_list_box p {
	text-align: center;
}
.team_list_box {
	max-width: 790px;
	width: 100%;
	margin: 0 auto;
}
.team_list_title {
	position: absolute;
	left: 0;
	top: 0;
	color: white;
	padding: 5px;
	line-height: 1;
	z-index: 1;
}
.team_list {
	margin-bottom: 65px;
	padding: 0 40px;
}
.team_list:last-child {
	margin-bottom: 0;
}
.recruitment_partner_img {
	width: 100%;
	max-width: 600px;
	height: 250px;
	margin: 0 auto;
	display: block;
	margin-bottom: 50px;
}
#team .bk_gry2 .main_title {
    margin-bottom: 60px;
}
#team .bk_gry2 .main_title:before {
	display: none;
}
.recruitment_partner_main {
	margin-bottom: 150px;
}
.recruitment_partner_form h4 {
	font-size: 40px;
	margin-bottom: 10px;
}
#contact table,
.recruitment_partner_form table {
	margin-top: 50px;
    margin-bottom: 80px;
	border: 0;
    background: none;
    border-spacing: 0 20px;
    border-collapse: inherit;
}
#contact table th,
#contact table td,
.recruitment_partner_form table th,
.recruitment_partner_form table td {
	border: 0;
}
#contact table th,
.recruitment_partner_form table th {
	width: 22%;
	padding: 14px 10px 14px 30px;
	vertical-align: baseline;
    white-space: nowrap;
}
#contact table td,
.recruitment_partner_form table td {
	width: 78%;
	padding: 0;
}
#contact table tr,
.recruitment_partner_form table tr {
	margin-bottom: 15px;
}
#contact table td label,
.recruitment_partner_form table td label {
    padding-top: 20px;
    display: block;
}
#contact table td textarea,
#contact table td input,
.recruitment_partner_form table td textarea,
.recruitment_partner_form table td input {
	width: 100%;
	background: white;
	padding: 18px 10px;
	font-size: 15px;
	border: 0;
}
.checkbox01-input {
    display: none;
}
.checkbox01-parts {
    padding-left: 50px;
    position: relative;
}
.checkbox01-parts::before {
    content: "";
    display: block;
    position: absolute;
    top: -5px;
    left: 0;
    width: 30px;
    height: 30px;
    background: white;
}
.checkbox01-input:checked + .checkbox01-parts::after {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 10px;
    width: 10px;
    height: 15px;
    -webkit-transform: rotate(40deg);
        -ms-transform: rotate(40deg);
            transform: rotate(40deg);
    border-bottom: 3px solid #dd282e;
    border-right: 3px solid #dd282e;
}
.checkbox01-parts a {
	text-decoration: underline;
}
.submit_box {
	justify-content: space-between;
}
.submit_box_back,
[type="submit"] {
	width: 100%;
	max-width: 400px;
    margin: 0 auto;
    display: block;
    background: rgba(232,59,52,1);
    padding: 27px 20px;
    text-align: center;
    font-size: 24px;
    color: white;
    transition: 0.25s;
}
[type="submit"]:hover {
    background: rgba(232,59,52,0.75);
    transition: 0.25s;
}
[type="submit"][disabled] {
    background: #C8C8C8;
}


/* guide ガイド */
#guide .main_title:before {
	background: url(../images/common/guide_w.svg) no-repeat;
	background-size: contain;
	width: 78px;
	height: 90px;
}
#footer .border,
#contact .border,
#guide .border {
    background: rgba(200,200,200,0.3);
    right: 10%;
    left: auto;
}
.guide_list {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin: 0 auto;
	text-align: center;
	width: 100%;
	max-width: 800px;
	margin-bottom: 100px;
}
.guide_list a {
	padding: 20px;
	border: 1px solid #aaaaaa;
	width: 25%;
    border-right: 0;
    background: #f6f6f6;
}
.guide_list a:last-child {
    border-right: 1px solid #aaaaaa;
}
.guide_list a:hover {
	background: #aaaaaa; color: #fff;
}
.list_title {
	font-size: 40px;
	margin-bottom: 35px;
	letter-spacing: 0.1em;
}
#support .content_wrap {
	padding: 80px 50px 50px;
	margin-bottom: 0;
}
.reform_loan_title {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 40px;
}
.reform_loan {
	width: 100%;
	max-width: 625px;
	height: 100%;
}
.reform_loan_title p {
	font-size: 22px;
	letter-spacing: 0.1em;
    line-height: 1.35;
}
.reform_loan_box_wrap {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 50px;
}
.reform_loan_box {
	width: 49%;
}
.reform_loan_box table {
	border-top: 1px solid #dddddd;
    border-left: 1px solid #dddddd;
}
.reform_loan_box th,
.reform_loan_box td {
    border-right: 1px solid #dddddd;
    border-bottom: 1px solid #dddddd;
    padding: 18px 23px;
}
.reform_loan_box th {
	width: 39%;
}
.reform_loan_box td {
	width: 61%;
}
.reform_loan_box th {
	background: #fef9e7;
} 
.loan_simulation {
	display: block;
	max-width: 340px;
	width: 100%;
	margin: 0 auto;
	padding: 5px;
}
.loan_simulation img {
	max-width: 330px;
	width: 100%;
	margin-bottom: 8px;
}
.loan_simulation p {
	letter-spacing: 0.05em;
	text-align: right;
	padding-right: 10px;
	left: 0;
	-webkit-transition: 0.25s;
	-o-transition: 0.25s;
	transition: 0.25s;
}
.loan_simulation p:before {
	width: 25px;
	height: 7px;
    top: -3px;
}
.loan_simulation:hover p {
	left: 5px;
	-webkit-transition: 0.25s;
	-o-transition: 0.25s;
	transition: 0.25s;
}
.flow_wrap {
	padding: 50px 30px 45px;
	max-width: 760px;
	width: 100%;
	margin: 0 auto;
}
#privacypolicy .list_sub a,
.flow_wrap a {
	text-decoration: underline;
}
.flow_title {
    font-size: 22px;
    margin-bottom: 10px;
    position: relative;
    padding-left: 65px;
}
.flow_title span {
    font-size: 40px;
    letter-spacing: 0.05em;
    top: -21px;
    left: 0;
    position: absolute;
}
.free_border {
	position: absolute;
	height: 100%;
	width: 10px;
}
.flow {
	margin-bottom: 5px;
}
.flow:last-child {
	margin-bottom: 0;
}
.free_icon {
	display: inline-block;
	line-height: 1.25;
} 
.free_icon_wrap {
	width: 100px;
	height: 100px;
	background: #f1d846;
	position: absolute;
	border-radius: 100%;
	right: -50px;
    bottom: -50px;
    z-index: 1;
}

.after_follow_wrap {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	padding: 50px;
	margin-bottom: 20px;
}
.after_follow_wrap:last-child {
	margin-bottom: 0;
}
.after_follow_img {
	width: 42.5%;
    height: 100%;
}
.after_follow_text {
	width: 50%;
}
.after_follow_text p:first-child {
	margin-bottom: 20px;
	line-height: 1.5;
}
.dl_question {
    margin-bottom: 5px;
}
.dt_question {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    cursor: pointer;
}

.dt_question_tit {
    font-size: 34px;
    width: 8%;
}
.dt_question span.po_center {
	-webkit-transform: translate(-50%,-55%);
    -ms-transform: translate(-50%,-55%);
    transform: translate(-50%,-55%);
}
.dt_question_arrow {
    width: 5%;
}
.dt_question_arrow img {
    width: 15px;
    height: 7.5px;
    -webkit-transform: translate(-50%,-50%) rotate(-180deg);
    -ms-transform: translate(-50%,-50%) rotate(-180deg);
    transform: translate(-50%,-50%) rotate(-180deg);
    -webkit-transition: 0.25s;
    -o-transition: 0.25s;
    transition: 0.25s;
}
.switchselected .dt_question_arrow img {
    -webkit-transform: translate(-50%,-50%) rotate(0deg);
    -ms-transform: translate(-50%,-50%) rotate(0deg);
    transform: translate(-50%,-50%) rotate(0deg);
    -webkit-transition: 0.25s;
    -o-transition: 0.25s;
    transition: 0.25s;
}
.dd_question p,
.dt_question_text {
    padding: 21px 10px 21px 5px;
    width: 87%;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}
.dt_question_text{
	line-height: 1.5;
}
.dd_question p {
	padding: 0 10px 0 5px;
	padding-bottom: 40px;
}
.dd_question a {
	text-decoration: underline;
}
.dd_question {
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
    -webkit-animation: fadeout 0.5s;
            animation: fadeout 0.5s;
}
@-webkit-keyframes fadeout {
    0% {
        opacity:1;
    }
    100% {
        opacity:0;
    }
}
@keyframes fadeout {
    0% {
        opacity:1;
    }
    100% {
        opacity:0;
    }
}
.switchselected + .dd_question {
    -webkit-animation: fadeIn 1.5s;
    animation: fadeIn 1.5s;
}
@-webkit-keyframes fadeIn {
    0% {
        opacity:0;
    }
    100% {
        opacity:1;
    }
}
@keyframes fadeIn {
    0% {
        opacity:0;
    }
    100% {
        opacity:1;
    }
}
.dd_question_box {
	width: 8%;
}


/* contact お問い合わせ */
#contact .main_title:before {
	background: url(../images/common/contact_g.svg) no-repeat;
	background-size: contain;
	width: 91px;
	height: 63px;
}
#contact .main_title {
	margin-bottom: 100px;
}
#contact .contact_tel {
	padding: 0;
	margin-bottom: 150px;
}
#contact .list_title {
    margin-bottom: 10px;
}

/* privacypolicy 個人情報保護方針 */
#privacypolicy .main_title:before {
	display: none;
}
#privacypolicy .main_title {
    font-size: 50px;
    margin-bottom: 90px;
}
#privacypolicy .list_title {
	font-size: 20px;
	margin-bottom: 15px;
}
.list_sub {
	margin-bottom: 50px;
}

/* 確認画面+サンクス画面 */
#thanks .main_title,
#check .main_title {
	font-size: 70px;
	margin-bottom: 50px;
}
#thanks .main_title {
	font-size: 30px;
}
#thanks .border, 
#check .border {
	display: none;
}
#thanks .main_title:before,
#check .main_title:before {
	display: none;
}
#thanks .recruitment_partner_form table,
#check .recruitment_partner_form table {
    margin-bottom: 50px;
    border-spacing: 0;
}
#check .recruitment_partner_form table th,
#check .recruitment_partner_form table td {
	border-bottom: 1px solid rgba(200,200,200,0.3);
}
#check .recruitment_partner_form table th {
	padding-left: 0;
}
#check .recruitment_partner_form table td {
	padding-left: 20px;
}
.submit_box {
	justify-content: space-between;
}
.submit_box_back,
#check [type="submit"],
#thanks [type="submit"] {
	width: 48%;
}


.submit_box_back {
    background: #C8C8C8;
}
.submit_box_back:hover {
    background: #acacac;
}

.text22px {
	font-size: 22px;
}
.text21px {
	font-size: 21px;
}
.text20px {
	font-size: 20px;
}
.text19px {
	font-size: 19px;
}
.text18px {
	font-size: 18px;
}
.text17px {
	font-size: 17px;
}
.text16px {
	font-size: 16px;
}
.text15px {
	font-size: 15px;
}
.text14px {
	font-size: 14px;
}
.text13px {
	font-size: 13px;
}
.text12px {
	font-size: 12px;
}
.text11px {
	font-size: 11px;
}
.text10px {
	font-size: 10px;
}
.team_box_text .name {
	font-size: 22px;
    margin-bottom: 30px;
}
.team_box_text .name .text14px  {
	font-size: 14px;
    margin-left: 15px;
}
.sp_only {
	display: none;
}
a.tel {
	pointer-events: none;
	text-decoration: none;
}


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

.header_logo {
    left: 20px; width: 85px;
}
.body_wrap {
	padding: 0 80px;
}
    
.instagram {
    right: 28px;
}
    
.toppage {
    right: 20px;
}
.menubar a {
    right: 16px;
}
.menubar a:hover {
    right: 13px;
}
.header_logo img {
}
.main .ttl-h1 {}
.main .ttl-h1 br {
	display: block;
}
.index_about_content {
    padding: 0 25px;
}
.index_about_content_box3 p {
    left: auto;
    right: 10%;
    top: -110px;
}
.index_team_content1 h2 {
    left: 40px;
    top: 60px;
}
.index_team_content1:before {
    right: 117px;
}
.index_team_content1 p {
    right: 50%;
    -webkit-transform: translate(50%,0);
        -ms-transform: translate(50%,0);
            transform: translate(50%,0);
}
.contact_tel h5:after, .contact_tel h5:before {
	display: none;
}
.contact_tel h5 {
    font-size: 14px;
    margin-bottom: 30px;
}
.company_overview table th {
	padding-left: 20px;
}

#support .content_wrap {
    padding: 80px 30px 50px;
}
.after_follow_wrap {
    padding: 30px;
}

.buy_box {
    width: 100%;
    margin-bottom: 10px;
}
.buy_box img {
	position: static;
    -webkit-transform: translate(0);
        -ms-transform: translate(0);
            transform: translate(0);
}
.team_box img {
	width: 90%;
	height: 90%;
}

.buy_box p {
    margin-bottom: 35px;
}
header p {
    left: 30px;
}


.min1240 {
	display: none;
}


.menubar {
	width: 80px;
}




}


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

.case_main_list_btn {
	left: 0;
    -webkit-transform: translate(0,-50%);
        -ms-transform: translate(0,-50%);
            transform: translate(0,-50%);
}
.thumb-item-nav li {
    margin: 0 2.5px;
}

.guide_list a {
    width: 50%;
}
.guide_list a:nth-child(2) {
    border-right: 1px solid #aaaaaa;
}
.guide_list a:nth-child(-n+2) {
	border-bottom: 0;
}
.thumb-item-nav img {
    height: auto;
}
.buy_table .buy_box {
    width: 100%;
}
.buy_table .buy_box:nth-child(1),
.buy_table .buy_box:nth-child(2) {
    padding: 50px;
}
.buy_table .buy_box:nth-child(1) {
	padding-bottom: 0;
}
.buy_table .buy_box:nth-child(2) {
	padding-top: 0;
}
.buy_table .buy_box {
	margin-bottom: 0;
}

.team_list_box {
    max-width: 550px;
}
.team_list_img {
    max-width: 140px;
}



 .team_box_img {max-width: 300px;height: 300px; }

}


/* Responsive
-----------------------------------------------------------*/
@media screen and (max-width: 870px) {
    .team_box_img {max-width: 250px;height: 250px; }
}    





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


.pc_only {
	display: none;
}
.sp_only {
	display: block;
}
.tel {
	pointer-events: auto;
}

.header_logo2 {
    width: 100%;
    max-width: 100px;
    display: block;
    margin: 0 auto;
}
.header_contact {
    left: -5px;
    top: 18px;
}
.body_wrap {
    padding: 0;
    overflow: hidden;
}
header {
	background: white;
    padding: 16px;
    width: 100%;
    position: fixed; 
    z-index: 100;
    top: 0; 
}
.main .ttl-h1 {
    font-size: 7vw;
    /*width: 90%;
    -webkit-transform: translate(-50%,-40%);
    -ms-transform: translate(-50%,-40%);
    transform: translate(-50%,-40%);*/
}
.main .ttl-h1 br {
	display: none;
}
header p {
	display: none;
}
.menubar {
    width: 100%;
    height: 50px;
    background: white;
    top: auto;
    bottom: 0;
    z-index: 100;
}
.menubar img {
	width: 55px;
}
.menubar li {
	width: calc(100% / 5);
    display: inline-block;
    height: auto;
}
.menubar ul {
	position: relative;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}
.menubar a {
	width: 100%;
	background: none;
}
.btn_close img,
.btn_menu img {
    max-width: 20px;
    width: 100%;
    display: block;
    margin: 0 auto;
    margin-bottom: 2px;
}
.btn_close,
.btn_menu {
    display: block;
    position: fixed;
    right: 15px;
    top: 13px;
    z-index: 101;
}
.btn_close p,
.btn_menu p {
	font-size: 9px;
}
.btn_header_text.drawer_open {
    visibility: visible;
    opacity: 1;
}
.logo_mark {
	width: 65px;
    top: auto;
    bottom: 10px; 
}
.drawer_open .btn_header_text_wrap {
    opacity: 1;
    top: 0;
}
.btn_header_text_wrap {
    opacity: 0;
    -webkit-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    position: relative;
    top: 12%;
    padding: 30px 30px 30px;
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
}
.btn_header_text li {
    letter-spacing: 0.1em;
    position: relative;
    font-size: 17px;
}
.btn_header_text_wrap a {
    display: inline-block;
    line-height: 1.5;
    padding: 7px 30px;
}

.h_instagram.sp_only {
    padding-top: 20px;
}
    
.h_instagram.sp_only span{
    padding-left: 10px;
}
    
.h_instagram.sp_only img{
    width: 30px;
    margin-top: -3px;
} 
    
.index_about {
    padding: 70px 0;
    position: relative;
    height: 1158px;
}
#team .index_team_content4 {
    height: auto;
    margin-bottom: 50px;
    text-align: center;
}
#team .index_team_content4 a {
    position: static;
}
.team_box_img { max-width: 300px;height: 300px; }
    
    
#ind_animation{ position: absolute; bottom: 25%; left: 50%; margin-left: -150px; }
#ind_animation img{ width: 300px;}    
    
    
.main {
	margin-top: -50px;
}
.scroll_to_continue a {
    bottom: 85px;
}
.scroll_to_continue span {
    bottom: 60px;
}

.about_main h1, .index_about h2 {
    font-size: 34px;
    margin-bottom: 70px;
    position: relative;
    left: 5%;
}
.about_main h1:before, .index_about h2:before {
    width: 56px;
    height: 110px;
    margin-right: 32px;
    top: 23px;
}
.about_main h1 span:before, .index_about h2 span:before {
    font-size: 14px;
    top: -10px;
    left: 3px;
    letter-spacing: -0.05em;
}
.index_about_content_box1 img {
    width: 90%;
    height: 208px;
}
.index_about_content_box2 img {
    left: 0;
    top: -294px;
    max-width: 430px;
    width: 42%;
    height: 188px;
    -o-object-position: 50% 95%;
    object-position: 50% 100%;
    padding-left: 45px;
}
.index_about_content_box1 p {
    font-size: 13px;
    position: absolute;
    right: 0;
    top: 250px;
    width: 49%;
}
.index_about_content {
    padding: 0;
}
.index_about_content_box3 img {
    top: -113px;
    left: auto;
    right: 45px;
    -webkit-transform: translate(0,0);
        -ms-transform: translate(0,0);
            transform: translate(0,0);
    width: 27%;
    height: 150px;
}
.index_about_content_box3 p {
    left: 20%;
    right: 0;
    top: -45px;
    font-size: 13px;
}
.index_about_content_box1, .index_about_content_box2, .index_about_content_box3 {
	height: 0;
}
.index_about_content_box1 {
	height: 534px;
}
.index_about_content a {
    position: relative;
    margin: 0 auto;
    top: 205px;
    width: 85%;
}

.index_case_main {
    height: 666px;
}

.index_case_main h2 {
    font-size: 90px;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
        -ms-transform: translate(-50%,-50%);
            transform: translate(-50%,-50%);
}
.index_case_main h2:before {
    width: 92px;
    height: 84px;
    margin-bottom: 35px;
}
.slidershadow {
    height: 180px;
    padding: 0 10px 10px 10px;
}

.index_case_content {
    position: relative;
    padding: 50px 0 100px;
}
.index_case_content ul li img {
    height: 170px;
    -webkit-box-shadow: 10px 10px 0px 0px #E7E5A1;
            box-shadow: 10px 10px 0px 0px #E7E5A1;
}
.link_btn {
    width: 85%;
}



.index_buy {
    height: 834px;
}
.index_buy_content {
    height: 100%;
    width: 100%;
}
.index_buy h2 {
    top: 80px;
    font-size: 70px;
    position: absolute;
    right: auto;
    left: 41%;
    -webkit-transform: translate(-50%,0);
        -ms-transform: translate(-50%,0);
            transform: translate(-50%,0);
    letter-spacing: 0.02em;
}
.index_buy h2:before {
    width: 94px;
    height: 95px;
    top: 0;
    left: 100%;
}

.index_buy img {
    top: 254px;
    width: 90%;
    height: 280px;
}
.index_buy_content_box {
    padding: 25px 25px;
    top: 493px;
    max-width: 310px;
}
.index_buy_content_box h3 {
    font-size: 22px;
    margin-bottom: 25px;
}
.index_buy_content_box p {
    font-size: 13px;
    line-height: 1.75;
    margin-bottom: 10px;
}
.index_buy_content a {
    bottom: 103px;
    width: 85%;
}
.index_buy .border {
    right: 30%;
    left: auto;
}

.index_team_content1 h2 {
    font-size: 70px;
    left: 50%;
    -webkit-transform: translate(-50% , 0);
        -ms-transform: translate(-50% , 0);
            transform: translate(-50% , 0);
    top: 60px;
    padding-left: 0;
    white-space: nowrap;
}
.idea:before, .key:before, .nami:before, .construction:before {
    bottom: -10px;
}

.idea:before {
    width: 11px;
    height: 23px;
}
.key:before {
    width: 18px;
    height: 8px;
}
.nami:before {
    width: 15px;
    height: 13px;
}
.construction:before {
    width: 26px;
    height: 18px;
}
.index_team .border {
	right: 10%;
}
.index_team_content3 {
    padding-top: 160px;
}

.index_team_content1 p {
    font-size: 11px;
    padding: 0 30px;
    text-align: center;
    top: 165px;
}
.index_team_content1:before {
    width: 51px;
    height: 42px;
    top: 30px;
    left: 25px;
    right: auto;
}
.index_team_content1 {
    height: 260px;
}
.index_team_content3 a{
    width: 85%;
    margin-bottom: 60px;
}
.index_contact_faq, .index_team_content4 {
    height: 76px;
}
.about_faq a, .index_contact_faq a, .index_team_content4 a {
    font-size: 21px;
}
.loan_simulation p:before, .about_faq a:before, .index_contact_faq a:before, .index_team_content4 a:before {
    width: 26px;
    height: 7px;
    top: -6px;
    right: 10px;
}
.index_contact {
	height: 666px;
}
.index_contact_content_text p {
    font-size: 12px;
    margin-bottom: 5px;
}
.index_contact_tel {
    pointer-events: auto;
    width: 80%;
    margin-bottom: 5px;
}

.index_contact_content {
	background: url(../images/common/en.svg) no-repeat center center;
    width: 80%;
    max-width: 400px;
    height: 400px;
}
.index_contact_content_text span {
    margin-bottom: 0px;
}
.top.index_contact_mail {
	top: 90%;
	text-align: center;
}
.index_contact_faq a,
.index_contact_faq {
	position: static;
	color: #333333;
}

.index_contact_faq a {
	padding: 20px;
    text-align: center;
    background: white;
}
.index_contact_faq a:before {
    background: url(../images/common/arrows1.svg) no-repeat;
    background-size: contain;
}
footer {
    padding: 56px 40px 190px;
}
.footer_logo {
    margin-bottom: 20px;
}
.footer_logo img {
    max-width: 100px;
    width: 100%;
}
#check #footer .border,
#thanks #footer .border {
	display: none;
}
#footer .toppage {
	position: absolute;
    left: 50%;
    bottom: 90px;
    -webkit-transform: translate(-40%,0);
        -ms-transform: translate(-40%,0);
            transform: translate(-40%,0);
}


.company_overview, .about_renovation, .about_omoi, .about_logo, .about_main {
    padding: 70px 20px;
}
.about_renovation_text h4, .about_main p {
    font-size: 20px;
    padding-left: 40px;
}
.about_renovation_text {
    margin-bottom: 65px;
}
.about_renovation_text {
    margin-bottom: 45px;
}
.about_renovation_text .text14px {
    padding-left: 40px;
}
.company_overview h3, .about_renovation_main h3, .about_omoi_box1 h3 {
    font-size: 24px;
    margin-bottom: 33px;
    padding-left: 40px;
}
.about_renovation_main p, .about_omoi_box1 p {
    font-size: 13px;
    padding-left: 40px;
}


.about_logo svg {
    max-width: 160px;
    margin-bottom: 0;
}

.about_logo {
    padding: 10px 20px;
}
.about_logo p {
	margin-bottom: 110px;
    text-align: center;
    font-size: 21px;
}
.about_omoi_box1 {
	width: 100%;
}
.about_omoi_box2 {
	display: none;
	width: 100%;
}
.about_omoi_box2 img {
    position: relative;
    margin-top: 0;
    left: -20px;
    margin-bottom: 20px;
}
.about_omoi_box2 span {
    font-size: 12px;
    line-height: 1.5;
    display: inline-block;
}
.about_img {
	width: 100%;
	margin-bottom: 5px;
}

.about_img02.about_img {
	margin-bottom: 40px;
}
.about_renovation_main {
    margin-bottom: 50px;
}
p.about_name {
    font-size: 20px;
    margin-bottom: 15px;
}
.company_overview {
    padding: 45px 20px;
}
.company_overview h3 {
	padding-left: 0px;
	margin-bottom: 25px;
}
.company_overview table {
    font-size: 12px;
}
.company_overview table th, .company_overview table td {
    padding: 10px 10px 8px 0;
}
.company_overview table th {
    padding-left: 10px;
}
.company_overview table th {
    width: 28%;
}
.company_overview table td {
    width: 72%;
}
#map1,
iframe {
    height: 200px;
    margin-bottom: 28px;
}
.about_faq a {
    margin-bottom: 30px;
}
.contact_tel h5 {
    font-size: 12px;
    margin-bottom: 15px;
    line-height: 1.75;
}
.contact_tel p {
    font-size: 13px;
}

.case_main_list {
    padding: 50px 0;
}
.main_title {
    font-size: 56px;
}
.main_title:before {
    width: 57px;
    height: 53px;
    margin-right: 24px;
}
.case_main {
    padding: 100px 0;
}
.case_main_list_text h3 {
    font-size: 22px;
    letter-spacing: 0.1em;
    line-height: 1.25;
    margin-bottom: 13px;
}
.case_main_list_text {
    right: 65%;
    max-width: 65%;
    padding: 25px 35px;
    -webkit-transform: translate(100%,0);
        -ms-transform: translate(100%,0);
            transform: translate(100%,0);
    bottom: -79px;
}
.case_main_list_box img {
    max-width: 100%;
    height: 210px;
}
.case_main_list_text p {
    font-size: 12px;
}
.case_main_list_btn {
    left: 39%;
    -webkit-transform: translate(-100%,0);
        -ms-transform: translate(-100%,0);
            transform: translate(-100%,0);
    font-size: 13px;
    padding: 15px;
    font-size: 13px;
    max-width: 39%;
}



#case_content .main_title {
    font-size: 28px;
}
#case_content .main_title:before {
    width: 28px;
    height: 26px;
    margin-right: 10px;
}
.content_title {
    font-size: 30px;
}

.case_content_date {
    font-size: 14px;
    font-style: oblique;
    margin-bottom: 40px;
}
.case_content_img {
    height: 214px;
    margin-bottom: 40px;
}
.case_content_text_description2,
.case_content_text_description1 {
	width: 100%;
}

.case_content_text_description1 {
	font-size: 13px;
	margin-bottom: 40px;
}
.case_content_text_description2 {
	font-size: 12px;
}
.case_content {
    padding: 100px 40px 50px;
}
.content_wrap {
    padding: 30px 20px 50px;
    margin-bottom: 50px;
}
.case_schedule.content_wrap,
.content_wrap {
    padding: 19px 37px;
    margin-bottom: 20px;
}
.thumb-item {
    margin-bottom: 7px;
}
.befoaf_wrap img {
    margin-bottom: 10px;
}
.befoaf_text {
    font-size: 11px; margin-bottom: 15px;
}
.case_schedule.content_wrap {
    margin-bottom: 50px
}
.wrap_1000 .link_btn {
	width: 100%;
}
#case_content .wrap_1000 {
    padding-bottom: 100px;
}

#thanks .wrap_900,
#check .wrap_900,
#contact .wrap_900, #guide .wrap_900, #team .wrap_900, #buy .wrap_1000 {
    padding: 130px 40px 100px;
}
#buy .border {
    left: 70%;
}
#contact .main_title, #guide .main_title, #team .main_title, #buy .main_title {
    font-size: 70px;
    margin-bottom: 5px;
}
.content_place {
    font-size: 12px;
    margin-bottom: 40px;
}
#buy .main_title:before {
    width: 60px;
    height: 60px;
    top: 80px;
    left: 20px;
    right: 0;
}
#buy .content_wrap {
    padding: 26px 37px;
    margin-bottom: 20px;
}
.buy_box img {
	position: static;
}
.buy_box {
    padding: 50px 37px;
    margin-bottom: 20px;
}
.none.buy_box {
    margin-bottom: 0;
}
.buy_table .buy_box:nth-child(1), .buy_table .buy_box:nth-child(2) {
    padding: 10px 37px 35px;
}
.buy_table .buy_box:nth-child(1) {
    padding-bottom: 0;
}
.buy_table .buy_box:nth-child(2) {
    padding-top: 0;
}
.sp_only.buy_box {
    padding: 20px 37px 10px;
    margin-bottom: 20px;
}
/*
.buy_box #map1,
.buy_box iframe {
    height: 238px;
    margin-bottom: 0;
}
*/

.team_box_wrap {
    margin-bottom: 50px;
}
#team .main_title:before {
    width: 51px;
    height: 42px;
    top: 89px;
    left: 24px;
    right: 0;
}
#team .main_title {
	margin-bottom: 50px;
}
.team_description {
    font-size: 13px;
}
.team_box {
	width: 100%;
}
.team_box:first-child {
	margin-bottom: 50px;
}
.effect_fadein02.effect_def {
	transition-delay: inherit;
}
.team_box:nth-child(2) .effect_def svg {
	animation-delay: inherit;
}
.team_box_img {
    margin-bottom: 15px;
}
.team_box_text .position {
	line-height: 1.35;
	margin-bottom: 8px;
}
.team_box_text .name {
    font-size: 20px;
    margin-bottom: 10px;
}
.team_box_text .name .text14px {
    font-size: 12px;
}



#partnars.wrap_900 {
	padding: 60px 40px 100px;
}
#team #partnars .main_title {
    margin-bottom: 20px;
    font-size: 30px;
}
.recruitment_partner_img {
    height: 156px;
    margin-bottom: 20px;
}
.recruitment_partner_main {
    margin-bottom: 70px;
}
.recruitment_partner_form h4 {
    font-size: 22px;
    margin-bottom: 10px;
}
#contact table, .recruitment_partner_form table {
    margin-top: 0px;
}
#contact table th, .recruitment_partner_form table th {
    width: 100%;
    padding: inherit;
    display: block;
    margin-bottom: 5px;
}
#contact table td, .recruitment_partner_form table td {
    display: block;
    width: 100%;
}
#contact table td textarea, #contact table td input, .recruitment_partner_form table td textarea, .recruitment_partner_form table td input {
    padding: 14px 10px;
}
#contact table td label, .recruitment_partner_form table td label {
    padding-top: 10px;
}
.checkbox01-parts.text18px {
	font-size: 14px;
}
.checkbox01-parts::before {
    top: -7px;
}
#contact table, .recruitment_partner_form table {
    margin-bottom: 20px;
}
.checkbox01-parts {
    padding-left: 45px;
}

#guide .main_title {
    font-size: 40px; margin-top: 12px;
    margin-bottom: 50px;
}
#guide .wrap_900 {
    padding: 130px 15px 0;
}
#guide .main_title:before {
    width: 43px;
    height: 49px;
    top: 85px;
    left: 28px;
    right: 0;
}
/*
.guide_list a {
    width: 33.33%;
}
.guide_list a:nth-child(-n+2) {
    border-bottom: 1px solid #aaaaaa;
}
.guide_list a:nth-child(2) {
    border-right: 0;
}
*/
.guide_list a {
    padding: 10px 0;
}
.guide_list {
    margin-bottom: 0;
}
#support {
	padding-top: 60px;
}
.list_title {
    font-size: 22px;
    margin-bottom: 10px;
    padding-left: 25px;
}
#support .content_wrap {
    padding: 25px;
    margin-bottom: 20px;
}
#support .content_wrap:last-child {
	margin-bottom: 0;
}
.reform_loan_title {
    margin-bottom: 10px;
}
#support .mb40 {
	margin-bottom: 25px!important;
}
.loan_simulation p {
    letter-spacing: 0;
}
.loan_simulation p:before {
    top: -3px;
}
#after_follow .wrap_900,
#flow .wrap_900 {
    padding: 100px 15px 0;
}
#faq.bk_gry2,
#flow.bk_gry2 {
    background-color: #F6F6F6;
}
.flow_wrap {
    padding: 25px;
}
.flow_title {
    font-size: 18px;
    margin-bottom: 10px;
    padding-left: 45px;
    line-height: 1.35;
}
.flow_title span {
    font-size: 28px;
    top: -10px;
}
.free_border {
    width: 2px;
}
.free_icon_wrap .text17px {
	font-size: 10px;
}
.free_icon_wrap {
    width: 60px;
    height: 60px;
    right: 0px;
    bottom: -30px;
}
.dt_question_tit {
    font-size: 22px;
    width: 15%;
}
.dd_question p, .dt_question_text {
    width: 70%;
    padding: 21px 0px;
}
.dd_question_box,
.dt_question_arrow {
    width: 15%;
}
.dd_question p {
    padding: 0;
    padding-bottom: 20px;
}

#faq .wrap_900 {
	padding: 100px 15px;
}


#contact .main_title {
	font-size: 40px;
    margin-bottom: 50px;
}
#contact .main_title:before {
    width: 55px;
    height: 40px;
    top: 85px;
    left: 24px;
    right: 0;
}
#contact .contact_tel {
    margin-bottom: 60px;
}

#contact .list_title {
    padding-left: 0;
}
#contact footer.bk {
	background: #f2f2f2;
}
#privacypolicy .main_title {
    font-size: 30px;
    margin-bottom: 40px;
}
#privacypolicy .list_title {
    font-size: 16px;
    margin-bottom: 10px;
    padding-left: 0;
}
.wrap_750 {
    padding: 110px 40px 100px;
}
a.tel {
    pointer-events: auto;
}
.list_sub {
    margin-bottom: 30px;
}
.team_list_box2 {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.team_list_box li {
    padding: 0 5px;
}
.team_list_box {
    max-width: 100%;
    padding-top: 15px;
}
.team_list {
    margin-bottom: 15px;
    padding: 0;
    padding-right: 25px;
    
    width: 90vw;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
.team_list_box2 li {
	width: 30%;
	margin-bottom: 30px;
}
.team_list_img {
    max-width: 100%;
    margin-bottom: 10px;
}
.team_list_box2:after{
  content:"";
  display: block;
  width:30%;
}

.team_list_box2 .idea:before, .team_list_box2 .key:before, .team_list_box2 .nami:before, .team_list_box2 .construction:before {
    bottom: -17px;
}
#check .recruitment_partner_form table td {
    padding-left: 0;
}
#check .recruitment_partner_form table th {
    padding-bottom: 5px;
}

#thanks .recruitment_partner_form table, 
#check .recruitment_partner_form table {
    margin-bottom: 30px;
    border-spacing: 0 20px;
}
#check .recruitment_partner_form table td {
    border-bottom: 0;
}
#thanks .main_title, #check .main_title {
    font-size: 50px;
    margin-bottom: 40px;
}
#thanks .main_title {
	font-size: 25px;
}
.submit_box_back,
#check [type="submit"],
#thanks [type="submit"] {
	width: 100%;
}
#check [type="submit"],
#thanks [type="submit"] {
	margin-bottom: 10px;
}

.parallax {
	background-image: none !important;
}
.main:before {
	background-position: 65%;
	background-repeat: no-repeat;
	background-size: cover;
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 203vw;
	content: "";
	z-index: -1;
}
.main.bgA::before {
	background-image: url(../images/index/main.jpg);
    background-position:70% center;
	transition: 0.35s;
}
.main.bgB::before {
	background-image: url(../images/index/main2.jpg);
    background-position:70% center;
	transition: 0.35s;
}
.main.bgC::before {
	background-image: url(../images/index/main_g.jpg);
    background-position:70% center;
	transition: 0.35s;
}
.main.bgD::before {
	background-image: url(../images/index/main.jpg) !important;
	transition: 0.35s;
}


.text22px {
    font-size: 18px;
}
.text20px {
    font-size: 16px;
}
.text18px {
    font-size: 17px;
}
.text16px {
    font-size: 13px;
}
.text14px {
    font-size: 12px;
}
li.pc_only {
	display: none;
}
*.sp_only {
	display: block;
}
.fluid-box {
	width: 100vw;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
}








}


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

    .index_team_content3 {
        padding-top: 90px;
    }

    .after_follow_text,
    .after_follow_img {
        width: 100%;
    }
    .after_follow_text {
        margin-bottom: 25px;
    }

    .text13px {
        font-size: 10px;
    }



}


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

    .index_team_content3 {
        padding-top: 70px;
    }
    
    
    .team_box_img { max-width: 300px;height: auto; }

}




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


    .contact_btn:hover,
    .contact_btn {
        right: -87%;
    }

    .contact_btn_2 p, 
    .contact_btn_2 a {
        max-width: 100%;
    }
    .contact_btn_2 {
        max-width: 100%;
        padding: 52px 10px 38px;
    }

    .btn_close_b {
        top: 9%;
        right: 0%;
    }
    .btn_close_b img {
        width: 50%;
    }
    .contact_btn.drawer_open {
        right: -10px;
        -webkit-transition: 1s;
        -o-transition: 1s;
        transition: 1s;
    }
    .contact_btn_1 {
        letter-spacing: 0.07em;
    }

    .case_main_list_text {
        right: 70%;
        max-width: 70%;
    }


    .buy_box th, .buy_box td {
        font-size: 12px;
        padding: 11px 0;
    }
    .buy_box th {
        width: 30%;
    }
    .buy_box td {
        width: 70%;
    }
    .index_team_content3 {
        padding-top: 20px;
    }

    

}


/* Responsive
-----------------------------------------------------------*/

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

#ind_animation{ position: absolute; bottom: 25%; left: 50%; margin-left: -130px; }
#ind_animation img{ width: 260px;}   

    
}  

/* Responsive
-----------------------------------------------------------*/
@media screen and (max-height: 750px) {
        
    .sidemenu {
        top: 9%;
        -webkit-transform: translate(-50%,-9%);
        -ms-transform: translate(-50%,-9%);
        transform: translate(-50%,-9%);
    }

}


/* Responsive
-----------------------------------------------------------*/
@media screen and (max-height: 550px) {
        

    
    .btn_header_text .logo_mark{ display: none; }

}




/* parts
-----------------------------------------------------------*/
.line {
	margin-bottom: 30px;
	padding-bottom: 30px;
}
.flexorder01 {
	-webkit-box-ordinal-group: 3;
	    -ms-flex-order: 2;
	        order: 2;
}
.flexorder02 {
	-webkit-box-ordinal-group: 2;
	    -ms-flex-order: 1;
	        order: 1;
}
a.btn01,
.btn01 {
	display: block;
	padding: 10px 0;
}
.btnlist li {
	margin: 0 0 5px;
	display: block;
}
