@charset "UTF-8";

* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	outline: none;

}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
object,
iframe,
pre,
code,
p,
blockquote,
form,
fieldset,
legend,
table,
th,
td,
caption,
tbody,
tfoot,
thead,
article,
aside,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
audio,
video,
canvas {
	margin: 0;
	padding: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
menu {
	display: block;
}

footer {
	position: relative;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden] {
	display: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

fieldset,
img {
	border: none;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
	font-style: normal;
	font-weight: normal;
}

ul,
ol,
menu {
	list-style: none;
}

caption,
th {
	text-align: left;
}

abbr,
acronym {
	border: none;
	font-variant: normal;
}

sup {
	vertical-align: text-top;
}

sub {
	vertical-align: text-bottom;
}

input,
textarea,
select {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}

a {
	color: inherit;
	text-decoration: none;
	-webkit-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

a:hover,
a:active,
a:focus {
	outline: 0;
	opacity: 0.8;
}

embed {
	width: 100%;
}

audio,
canvas,
video {
	display: inline-block;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

img,
object,
embed {
	max-width: 100%;
	height: auto;
}

object,
embed {
	height: 100%;
}

img {
	-ms-interpolation-mode: bicubic;
	vertical-align: middle;
}

form img,
input,
select {
	vertical-align: middle;
}

button {
	-webkit-appearance: none;
	margin: 0;
	padding: 0;
	outline: none;
}

.leftBox {
	float: left;
}

.rightBox {
	float: right;
}

.clear {
	clear: both !important;
}

.clearfix {
	zoom: 1;
}

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

.mb0 {
	margin-bottom: 0px !important;
}

.mt0 {
	margin-top: 0px !important;
}

.mr0 {
	margin-right: 0px !important;
}

.ml0 {
	margin-left: 0px !important;
}

.pb0 {
	padding-bottom: 0px !important;
}

.pt0 {
	padding-top: 0px !important;
}

.pr0 {
	padding-right: 0px !important;
}

.pl0 {
	padding-left: 0px !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mr10 {
	margin-right: 10px !important;
}

.ml10 {
	margin-left: 10px !important;
}

.pb10 {
	padding-bottom: 10px !important;
}

.pt10 {
	padding-top: 10px !important;
}

.pr10 {
	padding-right: 10px !important;
}

.pl10 {
	padding-left: 10px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mr20 {
	margin-right: 20px !important;
}

.ml20 {
	margin-left: 20px !important;
}

.pb20 {
	padding-bottom: 20px !important;
}

.pt20 {
	padding-top: 20px !important;
}

.pr20 {
	padding-right: 20px !important;
}

.pl20 {
	padding-left: 20px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.mt30 {
	margin-top: 30px !important;
}

.mr30 {
	margin-right: 30px !important;
}

.ml30 {
	margin-left: 30px !important;
}

.pb30 {
	padding-bottom: 30px !important;
}

.pt30 {
	padding-top: 30px !important;
}

.pr30 {
	padding-right: 30px !important;
}

.pl30 {
	padding-left: 30px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.mt40 {
	margin-top: 40px !important;
}

.mr40 {
	margin-right: 40px !important;
}

.ml40 {
	margin-left: 40px !important;
}

.pb40 {
	padding-bottom: 40px !important;
}

.pt40 {
	padding-top: 40px !important;
}

.pr40 {
	padding-right: 40px !important;
}

.pl40 {
	padding-left: 40px !important;
}

.mb50 {
	margin-bottom: 50px !important;
}

.mt50 {
	margin-top: 50px !important;
}

.mr50 {
	margin-right: 50px !important;
}

.ml50 {
	margin-left: 50px !important;
}

.pb50 {
	padding-bottom: 50px !important;
}

.pt50 {
	padding-top: 50px !important;
}

.pr50 {
	padding-right: 50px !important;
}

.pl50 {
	padding-left: 50px !important;
}

@font-face {
	font-family: 'Brown-Bold';
	src: url('../fonts/Brown-Bold.eot?#iefix') format('embedded-opentype'), url('../fonts/Brown-Bold.otf') format('opentype'), url('../fonts/Brown-Bold.woff') format('woff'), url('../fonts/Brown-Bold.ttf') format('truetype'), url('../fonts/Brown-Bold.svg#Brown-Bold') format('svg');
	font-weight: bold;
}

@font-face {
	font-family: 'Kozuka Gothic Pr6N R';
	src: url('../fonts/KozGoPr6N-Regular.otf') format('opentype');
	font-weight: normal;
}

@font-face {
	font-family: 'Kozuka Gothic Pro R';
	src: url('../fonts/KozGoPro-Regular.otf') format('opentype');
	font-weight: normal;
}

@font-face {
	font-family: 'Kozuka Gothic Pro L';
	src: url('../fonts/KozGoPro-Light.otf') format('opentype');
	font-weight: normal;
}

@font-face {
	font-family: 'Kozuka Gothic Pro M';
	src: url('../fonts/KozGoPro-Medium.otf') format('opentype');
	font-weight: normal;
}

@font-face {
	font-family: 'Kozuka Gothic Pro H';
	src: url('../fonts/KozGoPro-Heavy.otf') format('opentype');
	font-weight: bold;
}

@font-face {
	font-family: 'Kozuka Gothic Pro B';
	src: url('../fonts/KozGoPro-Bold.otf') format('opentype');
	font-weight: bold;
}

.db {
	display: block;
}

html {
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
}

body {
	background-color: #fff;
	color: #333;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	line-height: 1.75;
	letter-spacing: 2px;
}

/* #contents {
  overflow: hidden;
} */



.inner {
	width: 1110px;
	max-width: 100%;
	padding-left: 10px;
	padding-right: 10px;
	margin: 0 auto;
}

.hover:hover {
	-webkit-animation: hover 2s linear infinite;
	animation: hover 2s linear infinite;
}

@-webkit-keyframes hover {
	0% {
		opacity: 0.8;
	}

	25% {
		opacity: 0.6;
	}

	50% {
		opacity: 0.8;
	}

	100% {
		opacity: 1;
	}
}

@keyframes hover {
	0% {
		opacity: 0.8;
	}

	25% {
		opacity: 0.6;
	}

	50% {
		opacity: 0.8;
	}

	100% {
		opacity: 1;
	}
}

.bold {
	font-weight: bold;
}

.center {
	text-align: center;
}

.bg-blue {
	background-color: #2c75ba;
}

.cl-blue {
	color: #2c75ba;
}

.block-inner {
	/*width: 1130px;*/
	width: 1200px;
	max-width: 100%;
	margin: 0 auto;
	padding: 65px 10px 100px;
}

.no-full .main-content {
	width: calc(100% - 340px);
	float: left;
}

.no-full .sidebar {
	width: 300px;
	float: right;
}

.no-full .sidebar .item-sidebar {
	background-color: #fff;
	border-radius: 20px;
	overflow: hidden;
	-webkit-box-shadow: 0 0 10px -4px rgba(0, 0, 0, 0.5);
	box-shadow: 0 0 10px -4px rgba(0, 0, 0, 0.5);
	padding: 0 0 5%;
}

.no-full .sidebar .item-sidebar:not(:last-child) {
	margin-bottom: 14px;
}

.no-full .sidebar .tit-item {
	background-color: #2c75bb;
	color: #fff;
	text-align: center;
	padding: 10px;
}

.no-full .sidebar .ctent-item {
	padding: 15px 8px;
}

.main-title {
	text-align: center;
	color: #2c75bb;
	margin: 4% 0 0;
}

.other-title {
	background-color: #fff;
	padding: 105px 10px 120px;
	position: relative;
}

.other-title::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	/*ここで三角形のサイズを決める。
	必ず幅100vwにして、ブラウザサイズいっぱいにしてください。*/
	border-width: 0 0 100px 100vw;
	border-color: #f9f9f9;
	z-index: -1;
}

.hline {
	font-size: 35px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: .2em;
	margin-bottom: 10px;
}

.hline.no-default {
	text-transform: none;
}

.subline {
	font-size: 19px;
	font-weight: 500;
	letter-spacing: 2px;
}

.arrow-ttl {
	background-color: #2c75ba;
	border-radius: 20px;
	margin-bottom: 50px;
	position: relative;
	padding: 55px 0 54px;
	z-index: 10;
}

.arrow-ttl:after {
	content: "";
	border-left: 16px solid transparent;
	border-right: 16px solid transparent;
	border-top: 16px solid #2c75ba;
	position: absolute;
	left: 50%;
	margin-left: -16px;
	top: 100%;
}

.arrow-ttl > * {
	color: #fff;
}

.tit-section {
	color: #2c75bb;
	font-size: 27px;
	font-weight: bold;
}

header {
	position: fixed;
	z-index: 100;
	width: 100%;
	margin:0 auto;
	left:0;
	right:0;
}

header .inner{
	max-width:1100px;
	margin:0 auto;
	width:100%;

}

header.fixed {
	position: fixed;
	left: 0;
	right: 0;
	z-index: 30;
}

.logo {
	float: left;
	padding: 22px 0 0 0;
	line-height: 0;
}




.contact-box {
	position: relative;
	color: #fff;
}

.screen-reader-response {
    display: none;
}

span.wpcf7-not-valid-tip {
    color: #ff0000;
}

.wpcf7-response-output.wpcf7-validation-errors {
    color: #ff0000;
    text-align: center;
}

.your-name1 .wpcf7-not-valid-tip{
	display: none;
}

span.wpcf7-not-valid-tip {
    display: block;
}

.contact-box .img-contact img {
	width: 100%;
}

.contact-box .t-contact {
	font-size: 40px;
	font-weight: 900;
	line-height: 1;
	/* text-transform: uppercase; */
}

.contact-box .tit-contact .t-contact {
	margin-bottom: 10px;
}

.contact-box .tit-contact .tsub-contact {
	font-size: 18px;
	font-weight: 500;
    margin: 3% auto;
}

.contact-box .btn-contact {
	border-style: solid;
	border-color: #fff;
	display: inline-block;
	vertical-align: middle;
}

.contact-box a:hover {
	color: #fff;

}

.contact-box .btn-contact {
	font-weight: 500;
}

.contact-box .link-map {
	display: inline-block;
	vertical-align: middle;
	line-height: 0;
	width: 52px;
	height: 52px;
	border: 3px solid #fff;
	border-radius: 50%;
	margin-left: 20px;
	background: url(asset/icon_map_off.png) no-repeat center center;
}



.contact-box .img-contact {
	background: url(asset/img_contact01.jpg) no-repeat center center;
	background-size: cover;
}

.img-contact::before,
.img-contact_tokyo::before,
.img-contact_osaka::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background-color: rgba(44, 117, 187, .4);
}

.img-contact_tokyo::before,
.img-contact_osaka::before {

	background-color: rgba(0, 0, 0, .6);
	-webkit-transition: background-color .5s;
	-o-transition: background-color .5s;
	transition: background-color .5s;
}

.img-contact_tokyo:hover::before,
.img-contact_osaka:hover::before {

	background-color: rgba(0, 0, 0, .2);
}

.full-contact .ctent-contact {
	text-align: center;
	padding: 50px 0;
	position: relative;
}

.full-contact .ctent-contact .inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	height: 100%;
}

.full-contact .txt-contact {
	padding: 5% 0;
}

.full-contact .btn-contact {
	border-width: 4px;
	font-size: 18px;
	padding: 15px 30px 16px;
	border-radius: 36px;
	width: 320px;
	max-width: 100%;
}


.full-contact .btn-contact:hover {
	border-color: #2c75bb;
	background-color:#2c75bb;
	    opacity: 1;
}


.small-contact .img-contact_osaka,
.small-contact .img-contact_tokyo {
	width: 50%;
	position: relative;
	height: 25vh;
}

.small-contact .img-contact_osaka {
	float: left;
	background-image: url(asset/img_contact02.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.small-contact .img-contact_tokyo {
	float: right;
	background-image: url(asset/img_contact03.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.small-contact .ctent-contact {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	padding: 25px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
}

.small-contact .t-contact {
	margin-bottom: 0px;
}

.small-contact .button-contact {
	margin-bottom: 12px;
}

.small-contact .btn-contact {
	border-width: 3px;
	font-size: 19px;
	letter-spacing: 4px;
	padding: 5px 20px 6px;
	border-radius: 25px;
	width: 240px;
	max-width: 100%;
}



.small-contact .txt-contact {
	letter-spacing: 3px;
}

.three-box {
	padding: 85px 0;
}

.three-box ul li {
	background-color: #eee;
	width: 29.542%;
	height: 84px;
	float: left;
}

.three-box ul li:not(:last-child) {
	margin-right: 5.68%;
}

.footer {
	background-color: #2c75bb;
	color: #fff;
	text-align: center;
	padding: 25px 0 15px;
    font-size: 12px;
}

.f-logo {
	margin-bottom: 48px;
}

.f-logo a {
	display: inline-block;
	padding: 14px 25px;
	line-height: 0;
}

.f-menu {
	margin-bottom: 62px;
}

.f-menu li {
	display: inline-block;
	margin: 0 22px;
	font-size: .8em;
}

.contact-form-wrap {
	padding: 50px 0;
}

.content-top {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
}

.content-top::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	/*ここで三角形のサイズを決める。
	必ず幅100vwにして、ブラウザサイズいっぱいにしてください。*/
	border-width: 0 0 100px 100vw;
	border-color: transparent transparent #f9f9f9 transparent;
	z-index: -10;
}

.content-top-img {
	width: 50%;
	height: 45vh;
	margin: 70px 0 0;
}

.content-top-img img {
	width: 100%;
	height: 45vh;
	-o-object-fit: cover;
	object-fit: cover;
}

.content-top .main-title {
	width: 50%;
}

.content-message {
	background-color: #f8f8f8;
	color: #2c75bb;
	font-size: 24px;
	font-weight: bold;
	line-height: 2.5;
	padding: 90px 0 65px;
	text-align: center;
}

/* Button */
.btn-general.appbtn{text-transform:lowercase;}
.btn-general.app_contact_btn {
    padding: 20px;
    text-transform: lowercase;
    margin: 80px auto;
}
.btn-general {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	font-weight: 500;
	text-transform: uppercase;
	width: 367px;
	max-width: 100%;
	border-radius: 36px;
	border: 1px solid #2c75bb;
	overflow: hidden;
	text-align: center;
	background: rgba(72, 152, 232, 1);
	background: -webkit-gradient(left top, right bottom, color-stop(0%, rgba(72, 152, 232, 1)), color-stop(40%, rgba(72, 152, 232, 1)), color-stop(75%, rgba(44, 118, 187, 1)), color-stop(100%, rgba(44, 118, 187, 1)));
	background: -o-linear-gradient(331deg, rgba(72, 152, 232, 1) 0%, rgba(72, 152, 232, 1) 40%, rgba(44, 118, 187, 1) 75%, rgba(44, 118, 187, 1) 100%);
	background: linear-gradient(119deg, rgba(72, 152, 232, 1) 0%, rgba(72, 152, 232, 1) 40%, rgba(44, 118, 187, 1) 75%, rgba(44, 118, 187, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#4898e8', endColorstr='#2c76bb', GradientType=1);
	color: #fff;
	padding: 20px 40px;
	z-index: 1;
}

.btn-general:after {
	content: "";
	background-color: #fff;
	position: absolute;
	top: 0;
	-webkit-transform: rotateY(90deg);
	transform: rotateY(90deg);
	-webkit-transform-origin: left;
	-ms-transform-origin: left;
	transform-origin: left;
	-webkit-transition: transform .4s ease;
	-webkit-transition: -webkit-transform .4s ease;
	transition: -webkit-transform .4s ease;
	-o-transition: transform .4s ease;
	transition: transform .4s ease;
	transition: transform .4s ease, -webkit-transform .4s ease;
	right: 0;
	height: 100%;
	width: 100%;
	z-index: -1;
}

.btn-general:hover {
	color: #2c75bb;
}

.btn-general:hover:after {
	-webkit-transform: rotateY(0deg);
	transform: rotateY(0deg);
	-webkit-transform-origin: right;
	-ms-transform-origin: right;
	transform-origin: right;
}

/* .content-wrap */
._inner {
	margin: auto;
	max-width: 1050px;
	padding: 0 10px;
	width: 100%;
}

.content-wrap {
	background-color: #f9f9f9;
	padding: 100px 0 150px;
}

.content-box-head {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}

.content-box .content-box-img {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	max-width: 60.47%;
}

.content-box .content-box-img img {
	width: 100%;
	max-height: 400px;
	-o-object-fit: cover;
	object-fit: cover;
}

.content-box .content-box-tit,
.content-box .content-box-tit02 {
	background: url('asset/icon_bg.png') no-repeat left top;
	color: #2c75bb;
	font-size: 27px;
	font-weight: bold;
	padding: 137px 0 130px;
	position: relative;
	text-align: center;
	min-width: 376px;
}

.content-box .content-box-tit02 {
	background: url('asset/icon_bg02.png') no-repeat left top;
}

.content-box .content-box-tit03 {
    background: url(asset/icon_bg06.png) no-repeat 55% 35%;
    color: #2c75bb;
    font-size: 40px;
    font-weight: bold;
    padding: 105px 0 122px 50px;
    position: relative;
    text-align: center;
    min-width: 413px;
    background-size: 50% 50%;
}

.content-box .content-box-tit04 {
	background: url('asset/icon_bg07.png') no-repeat left 105px top 30px;
	color: #2c75bb;
	font-size: 40px;
	font-weight: bold;
	padding: 105px 0 122px 0;
	position: relative;
	text-align: center;
	min-width: 413px;
}



.content-box .content-box-tit03 span {
	display: block;
	font-size: 22px;
	font-weight: 500;
}

.content-wrap-item {
	margin-bottom: 150px;
	padding-bottom: 85px;
	position: relative;
	z-index: 1;
}

.content-wrap-item:last-child {
	margin-bottom: 0;
}

.content-box .content-box-txt {
	margin-top: 44px;
}

.content-box .content-box-txt > p:not(:last-child) {
	margin-bottom: 28px;
}

.content-box .content-box-txt ._note {
	font-weight: normal;
}

.content-box .content-box-btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 60px;
}

.content-box .content-box-btn a {
	margin: 0 10px;
}

.content-box .content-box-app {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-top: 30px;
}

.content-box .content-box-app ._download {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.content-box .content-box-app ._download a {
	margin: 0 11px;
}

.content-box-txt_sub-tit {
	color: #2c75ba;
	font-size: 1.25em;
	margin-bottom: 6px;
}

.content-wrap-item .content-wrap-bg {
	background-color: #fff;
	position: absolute;
	top: 100px;
	bottom: 0;
	z-index: -2;
}

.content-wrap--left.content-wrap-item .content-wrap-bg {
	border-top-left-radius: 20px;
	border-bottom-left-radius: 20px;
	left: 7.8%;
	right: 0;
}

.content-wrap--left .content-box-txt {
	padding-left: 0;
}

.content-wrap--left .content-box .content-box-img {
	border-top-right-radius: 20px;
	border-bottom-right-radius: 20px;
	margin-right: 6.47%;
	width: 54.59%;
	overflow: hidden;
}

.content-wrap--right.content-wrap-item .content-wrap-bg {
	border-top-right-radius: 20px;
	border-bottom-right-radius: 20px;
	right: 7.8%;
	left: 0;
}

.content-wrap--right .content-box-head {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.content-wrap--right .content-box-txt {
	padding-right: 58px;
}

.content-wrap--right .content-box .content-box-img {
	border-top-left-radius: 20px;
	border-bottom-left-radius: 20px;
	margin-left: 5.47%;
	-webkit-box-ordinal-group: 3;
	-ms-flex-order: 2;
	order: 2;
	width: 53.05%;
	overflow: hidden;
}

/* FAQ */
.list-qanda li {
	background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 20px;
	margin-bottom: 18px;
}

.list-qanda li:last-child {
	margin-bottom: 0;
}

.list-qanda .tit-faq {
	font-size: 20px;
	font-weight: bold;
	padding: 24px 90px 24px 85px;
	position: relative;
	cursor: pointer;
}

.list-qanda .tit-faq:before,
.list-qanda .tit-faq:after {
	content: '';
	position: absolute;
	top: 50%;
	border: 1px solid #2c75bb;
	width: 8px;
}

.list-qanda .tit-faq:after {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	right: 54px;
}

.list-qanda .tit-faq:before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	right: 60px;
}

.list-qanda .active .tit-faq:after {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.list-qanda .active .tit-faq:before {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.list-qanda .tit-faq span:before {
	content: '';
	position: absolute;
	left: 40px;
	top: 50%;
	border: 3px solid #2c75bb;
	background: #2c75bb;
	width: 12px;
	height: 12px;
	margin-top: -9px;
}

.list-qanda .ctent-faq {
	border-top: 2px solid #e9e9e9;
	padding: 5px 45px 30px 40px;
	display: none;
}

.list-qanda .tit-topic {
	font-size: 18px;
	font-weight: bold;
	color: #2c75bb;
	padding: 15px 0;
}

.list-faq {
	padding-left: 30px;
}

.list-faq dt,
.list-faq dd > div {
	font-weight: 500;
	padding: 11px 48px 11px 50px;
	border-radius: 8px;
	position: relative;
	cursor: pointer;
}

.list-faq dt {
	background-color: #eee;
}

.list-faq dd {
	display: none;
}

.list-faq dd > div {
	background-color: #fff;
	padding-right: 15px;
}

.list-faq dt:before,
.list-faq dd > div:before {
	color: #fff;
	padding: 2px 5px 6px 6px;
	display: inline-block;
	line-height: 1;
	margin-right: 12px;
	border-radius: 50%;
	position: absolute;
	left: 14px;
	top: 50%;
	margin-top: -12px;
}

.list-faq dt:before {
	content: 'Q';
	background-color: #2c75bb;
}

.list-faq dd > div:before {
	content: 'A';
	background-color: #F44336;
}

.list-faq dt:not(:first-child) {
	margin-top: 12px;
}

.list-faq dt span {
	position: absolute;
	right: 12px;
	top: 50%;
	width: 24px;
	height: 24px;
	background-color: #ccc;
	border-radius: 50%;
	margin-top: -12px;
}

.list-faq dt span:before,
.list-faq dt:not(.active) span:after {
	content: '';
	position: absolute;
	left: 7px;
	right: 7px;
	height: 3px;
	background-color: #fff;
	top: 50%;
	margin-top: -1px;
}

.list-faq dt span:after {
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}

.list-topic {
	max-height: 230px;
	padding-right: 100px;
	overflow-y: auto;
	font-size: 15px;
	font-weight: bold;
	line-height: 2.15;
}

.list-topic dt {
	float: left;
width: 44%;
	clear: both;
}

.list-topic dt span{
	background-color: #ec6941;
	color: #fff;
	display: inline-block;
	vertical-align: top;
	padding: 0 10px;
	border-radius: 16px;
	letter-spacing: 2px;
	margin: 0 34px;
	max-width: calc(100% - 150px);
}

.list-topic dt span.type01 {
	background-color: #ec6941;
}

.list-topic dt span.type02 {
	background-color: #8fc31f;
}

.list-topic dt span.type03 {
	background-color: #448aca;
}

.list-topic dt span.type04 {
	background-color: #ffb821;
}

.ctent-topic span.category,
.info-topic span.category{
	color: #fff;
	display: inline-block;
	vertical-align: top;
	padding: 0 10px;
	border-radius: 16px;
	letter-spacing: 2px;
	    font-size: 12px;
	margin: 5px 0 0;
}

span.ct-40 {
	background-color: #ec6941;
}

span.ct-39 {
	background-color: #8fc31f;
}

span.ct-38 {
	background-color: #448aca;
}

span.ct-59 {
	background-color: #ffb821;
}


.list-topic dd {
	float: left;
	width: 50%;
}

.list-topic dd:not(:last-child) {
	margin-bottom: 15px;
}

.list-property-grid {
	margin-bottom: 60px;
}

.list-property-grid {
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.list-property-grid li {
	width: 22.936%;
	float: left;
	background: #fff;
	border-radius: 8px;
	overflow: hidden;
}

.list-property-grid li {
	margin: 20px auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.list-property-grid .img-property img {
	width: 100%;
	height: 150px;
	-o-object-fit: cover;
	object-fit: cover;
}

.list-property-grid .ctent-property {
	padding: 15px 10px;
}

.list-property-grid .ctent-property .tit-property {
	color: #2c75bb;
	font-weight: bold;
	margin-bottom: 10px;
	line-height: 1;
}

.list-property-grid .ctent-property .txt-property {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.4;
}

.list-property-grid .ctent-property .price-property {
	color: #2c75bb;
	font-weight: bold;
}

@media (min-width: 801px) {
	.pc-none {
		display: none !important;
	}
}

@media (min-width: 641px) {
	.list-topic::-webkit-scrollbar {
		width: 8px;
	}

	.list-topic::-webkit-scrollbar-track {
		background: #e5e5e5;
	}

	.list-topic::-webkit-scrollbar-thumb {
		background: #aaa;
	}

	.list-topic::-webkit-scrollbar-thumb:hover {
		background: #888;
	}

	.list-property-grid li:not(:last-child) {
		margin-right: 2.75%;
	}
}

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

	.content-box .content-box-tit,
	.content-box .content-box-tit02,
	.content-box .content-box-tit03,
	.content-box .content-box-tit04 {
		background-size: 80%;
		background-position: left bottom;
		min-width: 30%;
	}

	.content-wrap--left.content-wrap-item .content-wrap-bg {
		left: 3%;
	}

	.content-wrap--right.content-wrap-item .content-wrap-bg {
		right: 3%;
	}
}

@media (max-width: 1000px) {
	.contact-box .t-contact {
		font-size: 25px;
	}

	.contact-box .tit-contact .tsub-contact {
		font-size: 18px;
	}

	.full-contact .ctent-contact {
		padding: 35px 0;
	}

	.full-contact .txt-contact {
		font-size: 13px;
	}

	.full-contact .btn-contact {
		font-size: 18px;
		padding: 8px 30px 9px;
		border-radius: 29px;
		width: 260px;
	}

	.small-contact .ctent-contact {
		padding: 20px;
	}

	.small-contact .t-contact {
		margin-bottom: 15px;
	}

	.small-contact .button-contact {
		margin-bottom: 5px;
	}

	.small-contact .btn-contact {
		font-size: 16px;
		line-height: 1.4;
		letter-spacing: 1px;
		border-radius: 20px;
		width: 180px;
	}

	.contact-box .link-map {
		width: 40px;
		height: 40px;
		margin-left: 10px;
		background-size: 18px;
	}

	.small-contact .txt-contact {
		letter-spacing: 1px;
		font-size: 14px;
	}

	.content-box .content-box-tit,
	.content-box .content-box-tit02,
	.content-box .content-box-tit03,
	.content-box .content-box-tit04 {
		padding: 13vw 0 5vw;
	}
}

@media screen and (max-width: 800px) {
	.sp-none {
		display: none !important;
	}

	.no-full .main-content {
		width: auto;
		float: none;
		margin-bottom: 50px;
	}

	.no-full .sidebar {
		width: auto;
		float: none;
	}

	.content-top {
		display: block;
	}

	.content-top-img {
		width: 100%;
	}

	.content-top .main-title {
		padding: 30px 0 25px;
		width: 100%;
	}

	.content-wrap {
		padding: 60px 0 70px;
	}

	.content-wrap-item {
		margin-bottom: 60px;
		padding-bottom: 45px;
	}

	.content-box-head {
		display: block;
		padding: 0 10px;
	}

	.content-box .content-box-tit,
	.content-box .content-box-tit02,
	.content-box .content-box-tit03,
	.content-box .content-box-tit04 {
		background-size: auto;
		background-position: center bottom;
		padding: 70px 0 45px;
		font-size: 24px;
	}

	.content-box .content-box-img {
		border-radius: 0 !important;
		margin: 0 -10px !important;
		overflow: hidden;
		text-align: center;
		max-width: none;
		width: auto !important;
	}

	.content-box .content-box-txt {
		margin-top: 0 !important;
	}

	.content-box .content-box-app {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}

	.content-wrap--left.content-wrap-item .content-wrap-bg,
	.content-wrap--right.content-wrap-item .content-wrap-bg {
		border-radius: 0;
		left: 0;
		right: 0;
	}

	.content-wrap--left .content-box-txt {
		padding-left: 10px;
	}

	.content-wrap--right .content-box-txt {
		padding-right: 10px;
	}

	.list-topic dt,
	.list-topic dd {
		float: none;
		width: 100%;
	}

	.list-topic dt {
		margin-bottom: 15px;
	}
}

@media screen and (max-width: 640px) {
	body {
		font-size: 13px;
		    overflow-x: hidden;
	}

header {
	background-color: rgba(255,255,255,0.98);
	}


	#contents {
		margin: 15% 0 0;
	}

	.menu .f_o {
		margin: 0;
	}

	.menu h3 {
		font-size: 18px;
		border-bottom: 1px solid rgba(255, 255, 255, .5);
		width: 90%;
		margin: 5px 0 15px;
	}

	.menu h3 span {
		font-size: 10px;
		display: block;
		margin: 0;
	}

	.menu .f_l a,
	.menu .f_r a {
		font-size: 12px;
		padding: 8px 0;
	}

	.menu ul {
		margin: 0 0 5px;
	}

	.menu dl {
		margin: 0;
	}

	.menu .f_l a:before,
	.menu .f_r a:before {
		margin: 0 3px 0 0;
	}

	.menu .btn-contact {
		border-width: 4px;
		font-size: 14px;
		padding: 10px 5px 10px;
	}

	.menu .button-contact {
		margin: 5px 0px 0 0%;
	}

	.menu .button-contact ul li {
		width: 45%;
		margin: 0 2%;
	}

	.menu .navi_logo {
		display: none;
	}

	.menu .button-contact a {
		width: 100%;
		margin: 0 auto;
	}

	.menu .menu-box {
		margin: 10% 0 0;
	}

	.small-contact .img-contact_osaka,
	.small-contact .img-contact_tokyo {
		width: 100%;
		position: relative;
		height: 20vh;
	}

	.block-inner {
		padding: 10vw 10px 15vw;
	}

	.logo {
padding: 24px 0;
	}

	.logo img {
		width: 180px
	}

	.hline {
		font-size: 25px;
		margin-bottom: 4px;
	}

	.subline {
		font-size: 16px;
	}

	.tit-section {
		font-size: 22px;
	}

	.other-title {
		padding: 8vw 10px;
	}

	.contact-box {
		overflow: hidden;
	}

	.contact-box .img-contact {
		margin: 0 -30%;
	}

	.contact-box .tit-contact .t-contact {
		margin-bottom: 1vw;
	}

	.contact-box .t-contact {
		font-size: 7vw;
	}

	.contact-box .tit-contact .tsub-contact {
		font-size: 4vw;
	}

	.full-contact .ctent-contact {
		padding: 6vw 0;
	}

	.full-contact .txt-contact {
		font-size: 3.3vw;
		width: 50%;
		margin: 0 auto;
		padding: 2% 0;
	}

	.full-contact .txt-contact br {
		display: none;
	}

	.full-contact .btn-contact {
		border-width: 0.8vw;
		font-size: 4vw;
		padding: 2vw 8vw;
		border-radius: 7vw;
		width: 60vw;
	}

	.small-contact .item-contact {
		overflow: hidden;
	}

	.small-contact .ctent-contact {
		padding: 3vw 10px;
	}

	.small-contact .t-contact {
		margin-bottom: 2vw;
	}

	.small-contact .btn-contact {
		border-width: 0.5vw;
		font-size: 3vw;
		letter-spacing: 1px;
		padding: 1vw 3vw;
		border-radius: 4vw;
		width: 32vw;
	}

	.contact-box .link-map {
		width: 8vw;
		height: 8vw;
		border-width: 0.5vw;
		margin-left: 1vw;
		background-size: 3vw;
	}

	.small-contact .txt-contact {
		font-size: 3vw;
		letter-spacing: 1px;
	}

	.three-box {
		padding: 8vw 0;
	}

	.content-message {
		font-size: 17px;
		padding: 50px 0;
	}

	.btn-general {
		padding: 16px 10px;
		font-size: 12px;
	}
	.btn-general.app_contact_btn{
		font-size:14px;
		width:90%;
	}

	.content-box .content-box-app {
		display: block;
		margin: 40px -11px 0;
		text-align: center;
	}

	.content-box .content-box-app ._download {
		margin-top: 20px;
	}

	.content-box .content-box-tit,
	.content-box .content-box-tit02 {
		background-size: 185px;
		background-position: center top;
	}

	.content-box .content-box-tit02 {
		background-size: 155px;
	}

	.content-box .content-box-tit03,
	.content-box .content-box-tit04 {
		font-size: 27px;
	}

	.content-box .content-box-tit03 span {
		font-size: 17px;
		margin-top: -8px;
	}

	.content-box .content-box-btn {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-flow: column;
		flex-flow: column;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-ms-grid-row-align: center;
		align-items: center;
		margin-top: 40px;
	}

	.content-box .content-box-btn a {
		margin: 0 auto 20px;
	}

	.content-box .content-box-btn a:last-child {
		margin-bottom: 0;
	}

	.list-property-grid {
		margin-bottom: 10vw;
	}

	.list-property-grid li {
		width: 100%;
		margin: 0 0 10px !important;
	}

	.list-property-grid .img-property img {
		width: 130px;
		height: 130px;
		float: left;
	}

	.list-property-grid .ctent-property {
		padding: 10px 10px;
		margin-left: 130px;
		overflow: hidden;
		height: 130px;
	}

	.list-property-grid .ctent-property .txt-property {
		font-size: 12px;
		height: 2rem;
		overflow: hidden;
	}

	.list-property-grid li:nth-child(odd) {
		margin-right: 4%;
	}

	.list-property-grid li:not(:nth-last-child(-n+2)) {
		margin-bottom: 4%;
	}

	/* FAQ */
	.list-qanda .tit-faq {
		font-size: 18px;
		padding: 14px 40px 16px 45px;
	}

	.list-qanda .tit-faq:before {
		right: 20px;
	}

	.list-qanda .tit-faq:after {
		right: 14px;
	}

	.list-qanda .tit-faq span:before {
		left: 16px;
	}

	.list-qanda .ctent-faq {
		padding: 5px 15px 30px 15px;
	}

	.list-qanda .tit-topic {
		padding: 15px 0;
	}

	.list-faq {
		padding-left: 20px;
	}

	.list-topic {
		max-height: none;
		padding-right: 0;
		font-size: 14px;
		line-height: 1.8;
	}

	.list-topic dt {
		margin-bottom: 5px;
		width: 100%;
	}

	.list-topic dt span {
		border-radius: 13px;
		padding: 0 10px;
		margin: 0 10px;
		letter-spacing: normal;
		max-width: calc(100% - 100px);
	}

	.list-topic dd {
		width: 100%;
		border-bottom: 1px dashed #2e78be;
		padding-bottom: 10px;
	}



	.list-business .item-business .item-box,
	.list-service .item-service .item-box,
	#contents > section.service > div > div.list-service.clearfix > div:nth-child(3) > a > div {
		height: auto !important;
	}

	.f-logo,
	.f-menu {
		margin-bottom: 20px;
	}

	.f-menu li {
		display: block;
		margin: 0 0 10px;
		font-size: 1em;
	}

	.button-movie img {
		width: 40px !important;
		display: block;
		margin: auto !important;
		padding-right: 5px;
	}

	.button-movie a {
		font-size: 12px !important;
	}

	.content-top-img {
		margin: 50px 0 0;
	}

	.no-full .sidebar .item-sidebar {
		border-radius: 8px;
	}
}

@media screen and (max-width: 400px) {
	.list-property-grid .ctent-property {
		padding: 10px;
	}

	.list-topic dt,
	.list-topic dd {
		width: auto;
		float: none;
	}
}

@media screen and (max-width: 375px) {
	.menu nav {
		width: auto;
		left: 0;
	}

	.logo {
		padding: 15px 0 16px 15px;
	}

	.menu .icon-menu {
		width: 56px;
		height: 56px;
	}

	.menu .icon-menu:before {
		left: 10px;
		right: 10px;
		top: 22px;
	}

	.menu .icon-menu:after {
		left: 20px;
		right: 10px;
		bottom: 22px;
	}

	.menu .icon-menu.close:before,
	.menu .icon-menu.close:after {
		left: 12px;
		right: 12px;
		top: 27px;
	}

	.menu nav {
		padding-top: 75px;
	}

	.f-logo {
		margin-bottom: 30px;
	}

	.f-menu {
		margin-bottom: 40px;
	}

	.f-menu li {
		display: block;
		margin: 0;
	}
}

/*お問い合わせ*/


div#mail_form {
	margin: 50px auto;
	padding: 10px 0;
	width: 100%;
	max-width: 920px;
}

div#mail_form span {
	font-size: 100%;
}

div#mail_form dl {
	width: 90%;
	margin: 0 auto;
	overflow: hidden;
}

div#mail_form dl dt {
	clear: both;
	width: 35%;
	float: left;
	border-top: 1px solid #cccccc;
	padding: 15px 0 0 15px;
	overflow: hidden;
}

div#mail_form dl dd {
	width: 65%;
	float: right;
	border-top: 1px solid #cccccc;
	padding: 15px 0 15px 5%;
	text-align: left;
}

div#mail_form dl dt:first-child,
div#mail_form dl dt:first-child + dd {
	border: none;
}

div#mail_form dl dt span {
	display: block;
	font-size: 85%;
	color: #3377ff;
	margin: 0 15px 0 0;
}

div#mail_form .border {
	border-top: 1px solid #cccccc !important;
}

/* -- for JavaScript ここから -------------------------------------------------------------------------------- */

div#mail_form dl dt span.required,
div#mail_form dl dt span.optional {
	display: inline-block;
	float: left;
	color: #ffffff;
	line-height: 1;
	padding: 8px 9px;
	border-radius: 3px;
}

div#mail_form dl dt span.required {
	background: #d9534f;
	border: 1px solid #d43f3a;
}

div#mail_form dl dt span.optional {
	background: #337ab7;
	border: 1px solid #2e6da4;
}

div#mail_form dl dd span.error_blank,
div#mail_form dl dd span.error_format,
div#mail_form dl dd span.error_match {
	display: block;
	color: #ff0000;
	margin-top: 3px;
}

span.loading {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	border-top: 5px solid rgba(255, 255, 255, 0.2);
	border-right: 5px solid rgba(255, 255, 255, 0.2);
	border-bottom: 5px solid rgba(255, 255, 255, 0.2);
	border-left: 5px solid #ffffff;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation: load-circle 1.0s linear infinite;
	animation: load-circle 1.0s linear infinite;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -30px;
	margin-left: -30px;
}

@-webkit-keyframes load-circle {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes load-circle {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

/* -- for JavaScript ここまで -------------------------------------------------------------------------------- */


div#mail_form input[type="text"],
div#mail_form input[type="email"],
div#mail_form input[type="tel"] {
	max-width: 88%;
	height: 3em;
	padding: 2px 2%;
	border: 1px solid #cccccc;
	border-radius: 3px;
	background: #fff;
	-webkit-appearance: none;
	font-size: 100%;
	font-family: inherit;
	margin-top: 7px;
}

div#mail_form input[type="text"]:focus,
div#mail_form input[type="email"]:focus,
div#mail_form input[type="tel"]:focus,
div#mail_form textarea:focus,
div#mail_form select:focus {
	-webkit-box-shadow: 0px 0px 5px #55ccff;
	box-shadow: 0px 0px 5px #55ccff;
	border: 1px solid #55ccff;
	background: #ffffff;
}

div#mail_form ul li input[type="radio"],
div#mail_form ul li input[type="checkbox"] {
	margin-right: 10px;
	margin-top: 7px;
}

div#mail_form ul li:first-child input[type="radio"],
div#mail_form ul li:first-child input[type="checkbox"] {
	margin-top: 0px;
}

div#mail_form select {
	font-size: 100%;
	font-family: inherit;
	margin-top: 10px;
	max-width: 90%;
	height: 2em;
	padding: 2px 2%;
	border: 1px solid #cccccc;
	border-radius: 3px;
	background: #fff;
	font-size: 100%;
	font-family: inherit;
	margin-top: 7px;
}

div#mail_form textarea {
	display: block;
	width: 90%;
	max-width: 90%;
	height: 200px;
	padding: 2px 2%;
	resize: vertical;
	border: 1px solid #cccccc;
	border-radius: 3px;
	background: #fff;
	-webkit-appearance: none;
	font-size: 100%;
	font-family: inherit;
}

div#mail_form ul {
	list-style-type: none;
}

div#mail_form ul li label {
	margin-right: 30px;
}

div#mail_form ul li label:hover {
	cursor: pointer;
}

div#mail_form ul li {
	display: inline-block;
}

div#mail_form input.company {
	width: 100%;
}

div#mail_form input.name_1,
div#mail_form input.name_2,
div#mail_form input.read_1,
div#mail_form input.read_2,
div#mail_form input.postal,
div#mail_form input.phone,
div#mail_form input.schedule {
	width: 42%;
}

div#mail_form input.company_1,
div#mail_form input.mail_address,
div#mail_form input.mail_address_confirm {
	width: 100%;
}

div#mail_form input.postal + a {
	display: inline-block;
	padding: 9px 15px;
	vertical-align: middle;
	line-height: 1;
	background: #5bc0de;
	border: 1px solid #46b8da;
	border-radius: 3px;
	color: #ffffff;
	font-family: inherit;
	text-decoration: none;
	position: relative;
	top: -1px;
}

div#mail_form input.postal + a:hover {
	cursor: pointer;
	background: #31b0d5;
	border: 1px solid #269abc;
}

div#mail_form input.address {
	width: 90%;
}

div#mail_form p#form_submit {
	width: 90%;
	margin: 0 auto;
	padding: 15px 0;
	border-top: 1px solid #cccccc;
	text-align: center;
}

div#mail_form input[type="submit"] {
	padding: 15px;
	vertical-align: middle;
	line-height: 1;
	background: #5cb85c;
	border: 1px solid #4cae4c;
	border-radius: 3px;
	color: #ffffff;
	font-family: inherit;
	-webkit-appearance: none;
	font-size: 100%;
	width: 100%;
	max-width: 600px;
}

div#mail_form input[type="submit"]:hover {
	cursor: pointer;
	background: #449d44;
	border: 1px solid #398439;
}

div#mail_form input.form_submit_button {}



div#mail_form input.alert,
div#mail_form input.alert:-ms-input-placeholder,
div#mail_form input.alert[type='text'],
div#mail_form input.alert[type='email'],
div#mail_form input.alert[type='tel']
{
	background-color: #fbf3f3!important;
}

div#mail_form input.alert:not(:-ms-input-placeholder){
	background-color:#FFFFFF!important;
}




input.alert:placeholder-shown,
input.alert:-ms-placeholder-shown{
    background-color: #fbf3f3!important;
}
input.alert:not(:placeholder-shown),
input.alert:not(:-ms-placeholder-shown){
    background-color: #fff!important;
}


@supports (-ms-ime-align:auto) {

input.alert:placeholder-shown{
    background-color: #fbf3f3!important;
}
}

@supports (-ms-ime-align:auto) {
input.alert:not(:placeholder-shown){
    background-color: #fff!important;
}
}





select.alert{background-color: #fbf3f3!important;}


select.alert option:not(:first-child){
background-color: #fff!important;
}





input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=search]:focus,
input[type=url]:focus,
textarea:focus {
	color: #003a6c!important;
	background-color: #d9f6ff!important;
}




/* -- responsive ----------------------------------------------------------------------------------------------------------------- */

/* 1000pixel start */
@media screen and (max-width: 1000px) {
	div#mail_form input[type="text"],
	div#mail_form input[type="email"],
	div#mail_form input[type="tel"] {
		max-width: 100%;
		width: 100%;
	}

	div#mail_form input.name_1, div#mail_form input.name_2, div#mail_form input.read_1, div#mail_form input.read_2, div#mail_form input.postal, div#mail_form input.phone, div#mail_form input.schedule {
    width: 46%;
	}

	div#mail_form textarea {
    width: 100%;
    max-width: 100%;
	}

	div#mail_form {
		width: 95%;
	}

	div#mail_form dl {
		overflow: visible;
	}

	div#mail_form dl dt {
		width: auto;
		float: none;
		text-align: left;
		padding: 10px 0 5px;
		font-weight: bold;
	}

	div#mail_form dl dd {
		width: auto;
		float: none;
		border-top: none;
		padding: 0px 0 13px 0px;
	}

	div#mail_form dl dt span {
		font-weight: normal;
	}

	/* -- for JavaScript ここから -------------------------------------------------------------------------------- */

	div#mail_form dl dt span.required,
	div#mail_form dl dt span.optional {
		margin-right: 1em;
		margin-bottom: 0.5em;
	}

	/* -- for JavaScript ここまで -------------------------------------------------------------------------------- */

	div#mail_form input[type="text"],
	div#mail_form input[type="email"],
	div#mail_form input[type="tel"] {
		margin-top: 0px;
	}

	div#mail_form input.form_submit_button {
		margin-left: 0;
	}

	div#mail_form select {
		margin-top: 0;
	}

	div#mail_form input.phone,
	div#mail_form input.schedule {
		width: 50%;
	}
}

/* 1000pixel end */

dt.boder,
dd.boder {
	border-bottom: 1px solid #cccccc !important;
}

dt.noboder,
dd.noboder {
	border-top: none !important;
}

dt.pab {
	padding-bottom: 118px !important;
}

span.has-free-text {
	width: 50%;
	margin: 0 0 23px 1em;
}

#thanks {
	border: 1px solid #ddd;
	width: 80%;
	padding: 50px;
	text-align: center;
	margin: 50px auto;
	background-color:#fff;
}

#thanks h1 {
	margin: 0 auto 5%;
}

#thanks .button-property {
	margin:5% auto 0 ;
}

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

	dt.boder,
	dd.boder {
		border-bottom: none !important;
	}

	dt.noboder {
		border-top: 1px solid #cccccc !important;
	}

	dd.noboder {
		border-top: none !important;
	}

	span.wpcf7-list-item label {
		width: 100%;
		display: block;
		padding: 0 0 12px;
	}

	.sec8 {
		margin: 90px 0 !important;
	}

	dt.pab {
		padding-bottom: 0px !important;
	}
}

@media screen and (max-width: 450px) {
	#thanks {
		width: 90%;
		padding: 15px;
	}

	#thanks h1 {
		font-size: 1.2em;
	}
}

.circles {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	z-index: 0;
}

.circles li {
	position: absolute;
	display: block;
	list-style: none;
	width: 20px;
	height: 20px;
	background: rgba(44, 117, 187, 0.5);
	-webkit-animation: animate 25s linear infinite;
	animation: animate 25s linear infinite;
	bottom: -150px;
}

.circles li:nth-child(1) {
	left: 25%;
	width: 80px;
	height: 80px;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
}

.circles li:nth-child(2) {
	left: 10%;
	width: 20px;
	height: 20px;
	-webkit-animation-delay: 2s;
	animation-delay: 2s;
	-webkit-animation-duration: 12s;
	animation-duration: 12s;
}

.circles li:nth-child(3) {
	left: 70%;
	width: 20px;
	height: 20px;
	-webkit-animation-delay: 4s;
	animation-delay: 4s;
}

.circles li:nth-child(4) {
	left: 40%;
	width: 60px;
	height: 60px;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	-webkit-animation-duration: 18s;
	animation-duration: 18s;
}

.circles li:nth-child(5) {
	left: 65%;
	width: 20px;
	height: 20px;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
}

.circles li:nth-child(6) {
	left: 75%;
	width: 110px;
	height: 110px;
	-webkit-animation-delay: 3s;
	animation-delay: 3s;
}

.circles li:nth-child(7) {
	left: 35%;
	width: 150px;
	height: 150px;
	-webkit-animation-delay: 7s;
	animation-delay: 7s;
}

.circles li:nth-child(8) {
	left: 50%;
	width: 25px;
	height: 25px;
	-webkit-animation-delay: 15s;
	animation-delay: 15s;
	-webkit-animation-duration: 45s;
	animation-duration: 45s;
}

.circles li:nth-child(9) {
	left: 20%;
	width: 15px;
	height: 15px;
	-webkit-animation-delay: 2s;
	animation-delay: 2s;
	-webkit-animation-duration: 35s;
	animation-duration: 35s;
}

.circles li:nth-child(10) {
	left: 85%;
	width: 150px;
	height: 150px;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	-webkit-animation-duration: 11s;
	animation-duration: 11s;
}

@-webkit-keyframes animate {
	0% {
		-webkit-transform: translateY(0) rotate(0deg);
		transform: translateY(0) rotate(0deg);
		opacity: 1;
		border-radius: 0;
	}

	100% {
		-webkit-transform: translateY(-1000px) rotate(720deg);
		transform: translateY(-1000px) rotate(720deg);
		opacity: 0;
		border-radius: 50%;
	}
}

@keyframes animate {
	0% {
		-webkit-transform: translateY(0) rotate(0deg);
		transform: translateY(0) rotate(0deg);
		opacity: 1;
		border-radius: 0;
	}

	100% {
		-webkit-transform: translateY(-1000px) rotate(720deg);
		transform: translateY(-1000px) rotate(720deg);
		opacity: 0;
		border-radius: 50%;
	}
}

/*背景調整用*/


.business-anchor,
.voice-wrap,
.app-box,
.faq-wrap,
.property-wrap,
.wpcf7,
.information-wrap {
	position: relative;
}

ul.list-property-grid > li {
	-webkit-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

ul.list-property-grid > li:hover {
	-webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}
/*------furirino-------*/
.fs40{font-size:40px;}
.furirino {}
.furirino .pc {
  display: block;
}
.furirino .sp,.furirino .tbl{
  display: none;
}
.furirino .flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.furirino h3, .furirino .sec03 .box02 {
  font-size: 30px;
  margin: 150px auto 50px;
}
.furirino h3 {
  text-align: center;
}
.furirino .mv_wrap {
  margin-top: 70px;
  position: relative;
}
.furirino .mv_wrap h2 {
  text-align: center;
  font-size: 62px;
  line-height: 1.2;
  position: absolute;
  top: 100px;
  left: 0;
  right: 0;
  margin: 0 auto;
  color: #fff;
  text-shadow: rgba(0, 0, 0, 0.16) 0 3px 6px;
}
.furirino .mv_wrap h2+img {
  position: relative;
  top: -20px;
  margin: 0 auto;
}
.furirino .mv {
  background: url(asset/furirino/mv.jpg)no-repeat;
  background-size: cover;
  height: 447px;
}
.furirino .inner>img {
  margin: 0px auto;
  display: block;
  text-align: center;
}
.furirino .sec01 {
  margin: 73px auto;
}
.furirino .sec01 .item_wrap {
  align-items: center;
}
.furirino .sec01 h3 {
  text-align: left;
  margin: 0 0 32px;
}
.furirino .sec01 .item_wrap, .furirino .sec01 .left {
  position: relative;
}
.furirino .sec01 .left::before {
  content: "";
  position: absolute;
  height: 214px;
  width: 1px;
  background: #000;
  right: 60px;
  transform: translateY(-50%);
  top: 50%;
}
.furirino .sec01 .left {
  width: 50%;
}
.furirino .sec01 .right {
  width: 50%;
  font-size: 14px;
}
.furirino .sec02 {
  background: #F9F5EB;
  padding: 60px 100%;
  margin: 130px -100% 0;
}
.furirino .sec02 .flex {
  align-items: center;
}
.furirino .sec02 .item_wrap {
  position: relative;
}
.furirino .sec02 .item_wrap::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background: #000;
  transform: translateY(-50%);
  top: 50%;
}
.furirino .sec02 .item {
  width: 33%;
  text-align: center;
  font-size: 20px;
  position: relative;
  box-sizing: border-box;
  font-weight: 500;
  line-height: 1.5;
  padding: 24px;
}
.furirino .sec02 .item::after {
  content: "";
  position: absolute;
  height: 111%;
  width: 1px;
  background: #000;
  top: 0;
  right: 0;
}
.furirino .sec02 .item:nth-child(3n)::after {
  content: none;
}
.furirino .sec02 .item span.large {
  font-size: 60px;
  position: relative;
  font-weight: 600;
  letter-spacing: 10px;
}
.furirino .sec02 .item:nth-child(1) span.large::after, .furirino .sec02 .item:nth-child(2) span.large::after, .furirino .sec02 .item:nth-child(4) span.large::after {
  position: absolute;
  font-size: 9px;
  width: 40px;
}
.furirino .sec02 .item:nth-child(1) span.large::after {
  content: "※注1\A※注2";
  transform: translateY(-50%);
  top: 35%;
  line-height: 1.4;
  letter-spacing: 2px;
  font-weight: normal;
}
.furirino .sec02 .item:nth-child(2) span.large::after {
  content: "※注3";
  right: 0;
  top: 0;
  letter-spacing: 2px;
  font-weight: normal;
}
.furirino .sec02 .item:nth-child(4) span.large::after {
  content: "※注4";
  transform: translateY(-50%);
  top: 35%;
  font-weight: normal;
  letter-spacing: 2px;
}
.furirino .sec02 .attention.pc {
  margin: 20px auto;
}
.furirino .sec02 ul.flex {
  align-items: start;
  margin: 48px auto 0;
}
.furirino .sec02 ul li {
  width: 50%;
  font-size: 12.7px;
}
.furirino .sec03 {}
.furirino .sec03 .ttl {
  width: 273px;
  margin: 80px auto;
}
.furirino .sec03 .ttl, .furirino .sec03 .ttl+p, .furirino .sec03 .box02 {
  text-align: center;
}
.furirino .sec03 .ttl, .furirino .sec03 .ttl+p {
  font-size: 20px;
  margin-bottom: 60px;
}
.furirino .sec03 .box02 p {
  font-size: 20px;
}
.furirino .sec03 .flow_wrap {
  width: 670px;
  margin: 100px auto;
  position: relative;
  font-size: 23px;
}
.furirino .sec03 .flow_wrap::before {
  content: "";
  position: absolute;
  width: 1px;
  height: 1159px;
  background: #1A1718;
  left: 50%;
}
.furirino .sec03 .flow_wrap::after {
  content: "";
  position: absolute;
  width: 17px;
  height: 17px;
  background: url(asset/furirino/ico_pin_yellow.svg)no-repeat;
  background-size: 100%;
  transform: translateX(-50%);
  left: 50%;
  bottom: -100px;
}
.furirino .sec03 .flow01, .furirino .sec03 .flow02, .furirino .sec03 .flow03, .furirino .sec03 .flow04, .furirino .sec03 .flow05, .furirino .sec03 .flow06, .furirino .sec03 .flow07, .furirino .sec03 .flow08, .furirino .sec03 .flow09 {
  position: relative;
}
.furirino .sec03 .flow01, .furirino .sec03 .flow02, .furirino .sec03 .flow04, .furirino .sec03 .flow06, .furirino .sec03 .flow08 {
  font-weight: 600;
}
.furirino .sec03 .flow01 {
  width: 90%;
  margin: 0 auto;
}
.furirino .sec03 .flow01 .item {
  text-align: center;
}
.furirino .sec03 .flow01 .item .body {
  padding: 20px 0;
}
.furirino .sec03 .flow02 {
  margin: 45px auto;
  width: 300px;
}
.furirino .sec03 .flow02::before {
  content: "";
  position: absolute;
  width: 17px;
  height: 17px;
  background: url(asset/furirino/ico_pin_yellow.svg)no-repeat;
  background-size: 100%;
  transform: translate(-50%, -50%);
  left: 50%;
  top: 50%;
}
.furirino .sec03 .flow04 .item:first-child {
  margin-left: 50px;
}
.furirino .sec03 .flow08 .item:nth-child(2){margin-right:70px;}
.furirino .sec03 .flow06 {
  width: 50%;
  margin-left: 50px;
}
.furirino .sec03 .flow08 .item:first-child {
  margin-left: 26px;
}
.furirino .sec03 .flow04 .item:nth-child(2) {}
.furirino .sec03 .flow04::before, .furirino .sec03 .flow04::after, .furirino .sec03 .flow06::before, .furirino .sec03 .flow08::before, .furirino .sec03 .flow08::after {
  content: "";
  position: absolute;
  height: 27px;
  transform: translateY(-50%);
  top: 50%;
}
.furirino .sec03 .flow04::before, .furirino .sec03 .flow06::before, .furirino .sec03 .flow08::before {
  background: url(asset/furirino/line_curve_left.svg);
  width: 151px;
  left: 184px;
}
.furirino .sec03 .flow06::before {
  left: 134px;
}
.furirino .sec03 .flow04::after, .furirino .sec03 .flow08::after {
  background: url(asset/furirino/line_curve_right.svg);
  width: 152px;
  right: 183px;
}
.furirino .sec03 .textbox {
  width: 272px;
  border: solid 1px #1A1311;
  text-align: center;
  margin: 75px auto;
  background: #fff;
  position: relative;
  font-size: 17px;
}
.furirino .sec03 .textbox span {
  display: block;
  font-size: 13px;
}
.furirino .sec04 {
  margin: 220px auto 100px;
}
.furirino .sec04 h3 {
  margin: 100px auto;
}
.furirino .sec04 dl {
  width: 48%;
  margin-bottom: 40px;
}
.furirino .sec04 dt {
  font-size: 20px;
  padding: 16px 0;
  border-bottom: solid 1px #383B42;
  margin-bottom: 16px;
  position: relative;
}
.furirino .sec04 dt::before, .furirino .sec04 dt.open::before {
  content: "";
  position: absolute;
  width: 15px;
  height: 8px;
  right: 10px;
  transform: translateY(-50%);
  top: 50%;
}
.furirino .sec04 dt::before {
  background: url(asset/furirino/ico_arrow_down.svg)no-repeat;
}
.furirino .sec04 dt.open::before {
  background: url(asset/furirino/ico_arrow_up.svg)no-repeat;
}
.furirino .sec04 dd {
  display: none;
}
.furirino .sec05 {
  background: url(asset/furirino/contact_bg.jpg);
  padding: 40px 100% 100px;
  margin: 0 -100%;
}
.furirino .sec05 h3 {
  margin: 40px auto;
}
.furirino .sec05 .inner {
  width: 630px;
}
.furirino .sec05 .wrap {
  margin-bottom: 24px;
  position: relative;
}
.furirino .sec05 .wrap span.mandatory{
  position: absolute;
  width: 60px;
  right: -70px;
  transform: translateY(-50%);
  top: 50%;
}
.furirino .sec05 .wrap.textarea span {
  top: 20px;
}
.furirino .sec05 .wrap.check{text-align:center;}
.furirino .sec05 .wrap.check span{
    position: static;
    text-align: center;
}
.furirino .sec05 .wrap.check a{text-decoration:underline;}
.furirino .sec05 .wrap.check a:hover{text-decoration:none;}
.furirino input[type="text"],.furirino input[type="email"],.furirino input[type="tel"],.furirino textarea{
    padding: 6px 16px;
    width:100%;
}
.furirino textarea{height:200px;}
.furirino .wpcf7-form-control-wrap.name01,
.furirino .wpcf7-form-control-wrap.name02,
.furirino .wpcf7-form-control-wrap.name_furi01,
.furirino .wpcf7-form-control-wrap.name_furi02{
    width: 48%;
}
span.wpcf7-not-valid-tip{color:#ef0c0c;font-size: 13px;}
.wpcf7-response-output.wpcf7-validation-errors{margin:20px auto;}
.sub_btn{
    width: 313px;
    margin: 0 auto;
    position: relative;
    transition: all .4s ease;
}
.furirino .sub_btn::before{
	content:"";
	position:absolute;
	width:100%;
	height:100%;
	top:8px;
	left:8px;
	border:solid 1px #FAE627;
}
.furirino .sub_btn:hover{
	transform: translate(8px, 8px);
	transition: all .4s ease;
}
.furirino .sub_btn:hover::before {
  transform: translate(-9px, -9px);
  transition: all .4s ease;
}
.furirino input[type="submit"]{
	width:100%;
	border:0;
	background:#FAE627;
	padding: 14px;
	font-size: 25px;
	font-weight: 600;
	position: relative;
	background-image: url(asset/furirino/ico_button_left.svg),url(asset/furirino/ico_button_right.svg);
	background-repeat: no-repeat;
	background-position: 20% center,80% center;
}
.wpcf7-response-output.wpcf7-mail-sent-ok{
	text-align:center;
	margin:  40px auto;
	font-weight:600;
	font-size:20px;
}
/*sp*/
@media screen and (max-width:559px) {
  .furirino .pc,
  .furirino .tbl{
    display: none;
  }
  .furirino .sp {
    display: block;
  }
  .furirino .flex {
    display: block;
  }
  .furirino img.sp{
  	margin:0 auto;
  }
  .furirino .inner {
    width: 92%;
    padding: 0;
    margin: 0 auto;
  }
  .furirino .inner>img {
    margin: 32px auto;
  }
  .furirino .mv_wrap {
    margin: 0
  }
  .furirino .mv_wrap img.sp {
    margin: -20px auto 0;
  }
  .furirino h3, .furirino .sec03 .box02 {
    font-size: 22px;
    line-height: 1.6;
    margin: 56px auto 32px;
  }
  .furirino .sec01 h3 {
    margin: 20px auto;
  }
  .furirino .sec01 .left img {
    width: 90%;
    margin: 0 auto;
    display: block;
  }
  .furirino .sec01 .left::before, .furirino .sec02 .item_wrap::before {
    content: none;
  }
  .furirino .mv {
    height: 50vw;
    background-size: cover;
    background-position-x: center;
  }
  .furirino .mv_wrap h2 {
    top: 40px;
    font-size: 40px;
  }
  .furirino .sec01 {
    margin: 56px auto;
  }
  .furirino .sec01 .left, .furirino .sec01 .right, .furirino .sec03 .flow_wrap, .furirino .sec02 .item, .furirino .sec04 dl {
    width: 100%;
  }
  .furirino .sec02 .item {
    padding: 24px 0;
  }
  .furirino .sec02 .item:nth-child(3n)::after {
    content: "";
  }
  .furirino .sec02 .item::after {
    width: 100%;
    height: 1px;
    bottom: 0;
  }
  .furirino .sec02 {
    margin: 0 -100%;
    padding: 20px 100%;
  }
  .furirino .sec02 .attention.sp {
    font-size: 11px;
    text-align: left;
  }
  .furirino .sec03 .flow_wrap {
    font-size: 20px;
    text-align: center;
    padding-bottom: 40px;
    margin-bottom: 0;
  }
  .furirino .sec03 .flow_wrap::before{
  	height:100%;
  }
  .furirino .sec03 .flow_wrap::after{bottom:0;}
  .furirino .sec03 .box02 p {
    font-size: 16px;
  }
  .furirino .sec03 .flex {
    display: flex;
    align-items: center;
  }
  .furirino .sec03 .ttl, .furirino .sec03 .ttl+p {
    font-size: 16px;
  }
  .furirino .sec03 .flow01 .item:first-child .body {
    padding
  }
  .furirino .sec03 .flow01 .item {
    width: 45%;
  }
  .furirino .sec03 .flow08 .item:first-child {
    margin: 0;
  }
  .furirino .sec02 .item:first-child::after, .furirino .sec03 .flow04::before, .furirino .sec03 .flow06::before, .furirino .sec03 .flow08::before {
    content: none;
  }
  .furirino .sec03 .flow04::after, .furirino .sec03 .flow08::after {
    content: "";
    position: absolute;
    width: 17px;
    height: 17px;
    background: url(asset/furirino/ico_pin_yellow.svg)no-repeat;
    background-size: 100%;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%;
  }
  .furirino .sec03 .flow02 {
    width: 50%;
    margin: 45px 0;
  }
  .furirino .sec03 .flow02::before {
    right: -9px;
    left: unset;
    transform: unset;
    top: 10px;
  }
  .furirino .sec03 .flow04 .item:first-child, .furirino .sec03 .flow08 .item:first-child {
    margin-left: 0;
    width: 50%;
  }
  .furirino .sec03 .flow04 .item:nth-child(2), .furirino .sec03 .flow08 .item:nth-child(2) {
    width: 50%;
  }
  .furirino .sec03 .flow06 {
    width: 50%;
    margin: 0;
  }
  .furirino .sec03 .flow06::before {
    content: "";
    position: absolute;
    width: 17px;
    height: 17px;
    background: url(asset/furirino/ico_pin_yellow.svg)no-repeat;
    background-size: 100%;
    right: -9px;
    transform: unset;
    top: 10px;
    left: unset;
  }
  .furirino .sec04{
    margin: 100px auto;
}
  .furirino .sec04 h3 {
    margin: 100px auto 32px;
  }
  .furirino .sec04 dl {
    margin-bottom: 16px;
  }
  .furirino .sec04 dt {
    padding-right: 30px;
    font-size: 18px;
  }
  .furirino .sec05 {
    background-size: cover;
  }
  .furirino .sec05 .inner{width: 100%;margin:0 auto;}
  .furirino .sec05 .wrap {
    margin-bottom: 40px;
  }
  .furirino .sec05 .wrap.flex{
  	display:flex;
  }
  .furirino .sec05 .wrap span.mandatory{
  	top:-16px;
  	left:0;
  }
  .sub_btn{width:90%;margin:0 auto;}
}
/*tablet*/
@media screen and (min-width:559px) and (max-width:1024px) {
	.furirino br.pc{display:none;}
	.furirino .tbl{display:block;}
	.furirino .mv{
		height: 50vw;
		background-size: cover;
		background-position-x: center;
		}
	.furirino .inner{width:94%;margin:0 auto;padding:0;}
	.furirino .inner>img {
		margin: 32px auto;
		}
	.furirino .sec01 .left{width: 38%;}
	.furirino .sec01 .right{width: 55%;}
	.furirino .sec01 h3{font-size:26px;margin-bottom: 20px;}
	.furirino .sec01 .left::before{right: -30px;height: 130%;}
	.furirino .sec02{
    padding: 40px 100%;
    }
  .furirino .sec02 .item:nth-child(1) span.large::after{width: 75px;}
	.furirino .sec02 .item span.large{font-size: 40px;letter-spacing: 4px;}
	.furirino .sec02 .attention.pc ul{display:block;margin: 0;}
	.furirino .sec02 .attention.pc ul li{width:100%;margin:8px auto;}
	.furirino .sec03 .flow08 .item:nth-child(2){margin-right:6%;}
	.furirino .sec04 dl{width:100%;margin-bottom: 16px;}
	.furirino .sec05 .wrap span.mandatory{
		right:-65px;
	}
}
/*PC・SP切り分け*/

@media (max-width: 640px) {
.pc{ display:none!important;}
}

@media screen and (min-width: 641px) {
.sp{ display:none!important;}
}
