@charset "UTF-8";

/* =BreakPoint
--------------------------------------------------------------
PC and TABLET ( and SP landscape )
@media ( min-width: 601px ){

PC ( and TABLET landscape )
@media ( min-width: 961px ){

TABLET ( and SP landscape )
@media ( min-width: 601px ) and ( max-width: 960px ){

TABLET and SP ( not TABLET landscape )
@media ( max-width: 960px ){

SP ( only portrait )
@media ( max-width: 600px ){

over
@media ( min-width: 1101px ){

under
@media ( max-width: 1100px ){
--------------------------------------------------------------
*/

/* =Reset
-------------------------------------------------------------- */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;word-wrap:break-word;overflow-wrap:break-word;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display: block;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal;}
li{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:inherit;}
q:before,q:after{content:'';}
abbr,acronym{border:0;font-variant:normal;}
sup{vertical-align:super;}
sub{vertical-align:text-bottom;}
input,textarea,select,button{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select,button{*font-size:100%;}
legend{color:#000;}
img {vertical-align:top;}
input[type="radio"],input[type="checkbox"] {vertical-align: -2px;}
label {cursor: pointer;}


/* =Common
-------------------------------------------------------------- */
body {
	text-align: center;
	line-height: 1;
	-webkit-text-size-adjust: 100%;
}
img {
	max-width: 100%;
	height: auto;
}
input[type="submit"], input[type="reset"] {
	appearance: none;
	cursor: pointer;
}

/* clearfix */
.cf:before, .cf:after {content:"";display:table;}
.cf:after {clear:both;}
.clr {clear: both;}


/* =Styles 
-------------------------------------------------------------- */
body {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	color: #333;
	background: #fff;
}
a {
	text-decoration: none;
	color: #000;
}
@media ( min-width: 601px ){
	body {
		font-size: 22px;
	}
	.sp {
		display: none !important;
	}
	.inner {
		max-width: 1040px;
		margin: 0 auto;
		padding: 0 20px;
	}
}
@media ( min-width: 961px ){
	.sptab {
		display: none !important;
	}
}
@media ( max-width: 960px ){
	.pc {
		display: none !important;
	}
}
@media ( max-width: 600px ){
	body {
		font-size: 5.07vw;
	}
	.pctab {
		display: none !important;
	}
	.inner {
		padding: 0 4.67vw;
	}
}

/*--------------------------------------
common
--------------------------------------*/
.fw_r {
	font-weight: 400;
}
.fw_m {
	font-weight: 500;
}
.fc_yellow {
	color: #ff8400;
}
.fc_red {
	color: #ff6955;
}
.fc_pink {
	color: #ff607e;
}

.cv_btn {
	position: relative;
	z-index: 1;
}
.cv_btn a {
	position: relative;
	box-sizing: border-box;
	color: #fff;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	width: 100%;
	background-image: linear-gradient(90deg, rgba(105, 186, 238, 1), rgba(78, 204, 191, 1));
}
.cv_btn a::before,
.cv_btn a::after {
	content: '';
	display: block;
	position: absolute;
}
.cv_btn a::before {
	width: 100%;
	height: 100%;
	left: 50%;
	transform: translateX(-50%);
	background: #1f9c96;
	z-index: -1;
}
.cv_btn a::after {
	background: url('img/cv_btn_icon.png') no-repeat left top/cover;
}
.cv_btn a .wrap {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
}
.cv_btn a .em {
	position: relative;
}
.cv_btn a .em::after {
	content: '';
	display: inline-block;
	vertical-align: middle;
	background: url('img/cv_btn_arrow.png') no-repeat left top/cover;
}
@media ( min-width: 601px ) {
	.cv_btn {
		width: 100%;
		max-width: 565px;
	}
	.cv_btn a {
		height: 120px;
		border-radius: 15px;
		padding: 0 50px;
	}
	.cv_btn a::before {
		border-radius: 15px;
		bottom: -5px;
		transition: opacity 0.3s;
	}
	.cv_btn a:hover::before {
		opacity: 0;
	}
	.cv_btn a::after {
		width: 123px;
		height: 123px;
		left: 18px;
		top: -16px;
	}
	.cv_btn a .fw_r {
		padding: 0 0 0 25px;
	}
	.cv_btn a .em {
		font-size: 41px;
		margin: 12px 0 0;
	}
	.cv_btn a .em .small {
		font-size: 36px;
	}
	.cv_btn a .em::after {
		width: 31px;
		height: 35px;
	}
}
@media ( max-width: 600px ) {
	.cv_btn a {
		font-size: 4vw;
		height: 18.67vw;
		border-radius: 2vw;
		padding: 0 4.67vw;
	}
	.cv_btn a::before {
		border-radius: 2vw;
		bottom: -1.2vw;
	}
	.cv_btn a::after {
		width: 21.33vw;
		height: 21.33vw;
		left: 4.67vw;
		top: -3.47vw;
	}
	.cv_btn a .em {
		font-size: 6.4vw;
		margin: 1.87vw 0 0;
	}
	.cv_btn a .em .small {
		font-size: 5.87vw;
	}
	.cv_btn a .em::after {
		width: 5.07vw;
		height: 5.6vw;
	}
}
.diamond_title {
	position: relative;
}
.diamond_title::before {
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	background: url('img/diamond_title_before.png') no-repeat left top/cover;
}
@media ( min-width: 601px ) {
	.diamond_title {
		font-size: 35px;
		line-height: 1.43;
		padding: 53px 0 0;
	}
	.diamond_title::before {
		width: 80px;
		height: 18px;
	}
}
@media ( max-width: 600px ) {
	.diamond_title {
		font-size: 6.67vw;
		line-height: 1.3;
		padding: 12.27vw 0 0;
	}
	.diamond_title::before {
		width: 21.07vw;
		height: 4.67vw;
	}
}
/*--------------------------------------
#head
--------------------------------------*/
#head {
	width: 100%;
	background: #fff;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 997;
}
#head .inner {
	display: flex;
	align-items: center;
}
#head .for_other {
	position: relative;
	display: inline-block;
}
#head .for_other::after {
	content: '';
	display: block;
	background: url(img/sp_menu_navi_arrow.png) no-repeat left top / cover;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
@media ( min-width: 601px ) {
	#head {
		box-shadow: 0px 13px 9px 0 rgba(100, 100, 100, 0.4);
	}
	#head .inner {
		height: 85px;
		justify-content: flex-end;
		gap: 0 38px;
	}
	#head .logo {
		width: 122px;
		margin: 0 auto 0 0;
	}
	#head .tel {
		width: 220px;
	}
	#head .tel .num {
		width: 220px;
		margin: 0 auto 6px;
	}
	#head .tel .time {
		width: 181px;
	}
	#head .menu_btn {
		cursor: pointer;
		width: 25px;
		height: 21px;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}
	#head .menu_btn span {
		width: 100%;
		height: 3px;
		background: #484848;
	}
	#head .for_other {
		font-size: 14px;
		margin-right: 20px;
	}
	#head .for_other:hover {
		text-decoration: underline;
	}
	#head .for_other::after {
		width: 7px;
		height: 12px;
		right: -16px;
	}
}
@media ( max-width: 600px ) {
	#head {
		box-shadow: 0px 1.73vw 1.2vw 0 rgba(100, 100, 100, 0.4);
	}
	#head .inner {
		height: 14.93vw;
		justify-content: flex-end;
		gap: 7vw;
	}
	#head .logo {
		width: 18.93vw;
		margin: 0 auto 0 0;
	}
	#head .tel {
		width: 41.87vw;
	}
	#head .tel .num {
		width: 41.87vw;
		margin: 0 auto 1.87vw;
	}
	#head .tel .time {
		width: 35.47vw;
		margin: 0 auto;
	}
	#head .menu_btn {
		width: 8.53vw;
		height: 9.07vw;
		background: url('img/sp_menu.png') no-repeat left top/cover;
	}
	#head .menu_btn span {
		display: none;
	}
	#head .for_other {
		font-size: 3vw;
		margin-right: 4.67vw;
	}
	#head .for_other::after {
		width: 2.1vw;
		height: 3.15vw;
		right: -4vw;
	}
}

/*-----------------------------------
.sp_menu,.overlay
-----------------------------------*/
.overlay {
	display: none;
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	background: rgba(59,59,59,0.8);
	z-index: 998;
}
.sp_menu {
	background: #fff;
	box-sizing: border-box;
	position: fixed;
	z-index: 999;
}
.sp_menu .navi li {
	text-align: left;
	border-bottom: 1px solid #484848;
}
.sp_menu .navi li:first-child {
	border-top: 1px solid #484848;
}
.sp_menu .navi li a {
	box-sizing: border-box;
	position: relative;
	display: block;
	width: 100%;
}
.sp_menu .navi li a::after {
	content: '';
	display: block;
	background: url('img/sp_menu_navi_arrow.png') no-repeat left top/cover;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
@media ( min-width: 601px ) {
	.sp_menu {
		width: 380px;
		height: 100vh;
		padding: 60px 30px;
		transform: translateX(110%);
		right: 0;
		top: 0;
		transition: transform 0.8s;
	}
	.sp_menu.active {
		transform: translateX(0);
	}
	.sp_menu .content .close_btn {
		width: 59px;
		height: 60px;
		position: absolute;
		left: -58px;
		top: 0;
	}
	.sp_menu .navi li a {
		padding: 25px 22px;
	}
	.sp_menu .navi li a::after {
		width: 10px;
		height: 15px;
		right: 16px;
	}
}
@media ( max-width: 600px ) {
	.sp_menu {
		visibility: hidden;
		padding: 4.8vw 7.07vw 7.33vw;
		width: calc(100% - 9.33vw);
		border-radius: 2vw;
		opacity: 0;
		transition: visibility 0.5s,opacity 0.5s;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		box-shadow: 0 0 2.13vw 0.67vw rgba(66, 66, 66, 0.6);
	}
	.sp_menu.active {
		opacity: 1;
		visibility: visible;
	}
	.sp_menu .content .logo {
		width: 19.73vw;
		margin: 0 auto 5.73vw;
	}
	.sp_menu .content .close_btn {
		width: 10.4vw;
		height: 7.73vw;
		position: absolute;
		left: 6.4vw;
		top: 4.8vw;
	}
	.sp_menu .navi li a {
		line-height: 1.3;
		font-size: 4.53vw;
		padding: 5.6vw 10.67vw 5.87vw 2vw;
	}
	.sp_menu .navi li a::after {
		width: 3.47vw;
		height: 5.33vw;
		right: 3.33vw;
	}
}

/*--------------------------------------
#kv
--------------------------------------*/
#kv .rhombus {
	position: relative;
	text-align: left;
}
@media ( min-width: 601px ) {
	#kv .kv_cc {
		font-size: 50px;
		line-height: 1.2;
	}
	#kv .kv_cc .em {
		font-size: 79px;
	}
	#kv .cv_btn {
		margin: 0 auto;
	}
}
@media ( min-width: 961px ) {
	#kv {
		background: url('img/kv_bg_pc.png') no-repeat center top/cover;
		overflow: hidden;
		padding: 85px 0 167px;
	}
	#kv .inner {
		position: relative;
		padding-top: 38px;
	}
	#kv .inner::before {
		content: '';
		width: 998px;
		height: 707px;
		background: url('img/kv_photo_pc.png') no-repeat left top/cover;
		position: absolute;
		top: 0;
	}
	#kv .kv_cc {
		width: 580px;
		padding: 0 0 0 70px;
		position: relative;
	}
	#kv .kv_cc .img {
		margin: 0 0 18px;
	}
	#kv .rhombus {
		width: min(71.73vw,789px);
		margin: 0 0 15px -20px;
		position: relative;
	}
}
@media ( min-width: 1001px ) {
	#kv .inner::before {
		right: -230px;
	}
}
@media ( min-width: 961px ) and ( max-width: 1000px ) {
	#kv .inner::before {
		right: -270px;
	}
}
@media ( min-width: 601px ) and ( max-width: 960px ) {
	#kv {
		padding: 125px 0 100px;
		background: url('img/kv_bg.jpg') no-repeat right bottom/cover;
	}
	#kv .kv_cc {
		margin-bottom: min(52.08vw,500px);
	}
	#kv .kv_cc .img {
		width: 90%;
		max-width: 580px;
		margin: 0 auto;
	}
	#kv .rhombus {
		width: calc(100% + 40px);
		margin: 0 -20px;
	}
	#kv .cv_btn {
		margin: -50px auto 0;
	}
}
@media ( max-width: 600px ) {
	#kv {
		background: url('img/kv_bg.jpg') no-repeat left top/cover;
		padding: 20.53vw 0 1.2vw;
		margin: 0 0 10vw;
	}
	#kv .kv_cc {
		text-align: left;
		font-size: 8.8vw;
		line-height: 1.27;
		margin: 0 0 56vw;
	}
	#kv .kv_cc .em {
		font-size: 13.87vw;
		letter-spacing: -0.1em;
		padding: 0 2vw 0 0;
	}
	#kv .kv_cc .img {
		width: 92.53vw;
		margin: 0 -0.93vw
	}
	#kv .rhombus {
		width: 100vw;
		margin: 0 -4.67vw 0;
	}
	#kv .cv_btn {
		margin: -5.73vw auto 0;
	}
}
@media ( min-width: 1501px ) {
	#kv {
		background: url('img/kv_bg_pc.png') no-repeat center top/cover;
	}
}
@media ( min-width: 961px ) and ( max-width: 1500px ) {
	#kv {
		background: url('img/kv_bg_pc.png') no-repeat center top;
	}
}
/*--------------------------------------
#work_example
--------------------------------------*/
#work_example {
	position: relative;
	background: #ffbc4b;
}
#work_example::before,
#work_example::after {
	content: '';
	display: block;
	width: 100%;
	position: absolute;
}
#work_example .inner {
	position: relative;
	z-index: 5;
}
#work_example .title {
	color: #fff;
}
#work_example .work_list ul {
	display: flex;
}
#work_example .work_list li {
	background: #fff;
	position: relative;
	font-feature-settings: 'palt';
}
#work_example dt {
	background: #fff;
	position: relative;
}
#work_example dt::before,
#work_example dt::after {
	content: '';
	display: block;
	position: absolute;
}
#work_example dt::before {
	width: 100%;
	background: #ffbc4b;
	height: 4px;
	left: 0;
	bottom: 0;
}
#work_example dt::after {
	width: 0;
	height: 0;
	border-style: solid;
	border-color: #fff transparent transparent transparent;
	left: 50%;
	transform: translateX(-50%);
	z-index: 5;
}
#work_example dt .essential {
	box-sizing: border-box;
	color: #fff;
	background-image: linear-gradient(to left, rgba(255, 96, 0, 1), rgba(255, 202, 112, 1));
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
}
#work_example .work_list li:nth-child(2) dt .essential {

}
#work_example dd {
	position: relative;
}
#work_example dd::before {
	content: '';
	display: block;
	position: absolute;
}
#work_example dd::before {
	width: 0;
	height: 0;
	border-style: solid;
	border-color: #ffbc4b transparent transparent transparent;
	left: 50%;
	transform: translateX(-50%);
}
#work_example dd .info {
	text-align: left;
}
#work_example dd .info div {
	position: relative;
}
#work_example dd .info div::after {
	content: '';
	display: block;
	width: 100%;
	position: absolute;
	left: 0;
}
#work_example dd .info div::after {
	bottom: 0;
}
@media ( min-width: 601px ) {
	#work_example .inner {
		max-width: 1210px;
	}
	#work_example .title {
		font-size: 35px;
		margin: 0 0 77px;
	}
	#work_example .work_list {
		margin: 0 0 80px;
	}
	#work_example .work_list li {
		border-radius: 20px;
		box-shadow: 0px 8px 0px 0px rgba(164,70,57,1);
	}
	#work_example .work_list li dt {
		border-radius: 20px 20px 0 0;
		padding: 42px 15px 30px;
	}
	#work_example .work_list li dt::after {
		border-width: 16px 11px 0 11px;
		bottom: -12px;
	}
	#work_example .work_list li dt .essential {
		font-size: 20px;
		padding: 9px 0 0;
		width: 170px;
		height: 50px;
		border-radius: 25px;
		border: solid #fff 5px;
		top: -25px;
	}
	#work_example .work_list li dt .pr_point {
		margin: 0 0 13px;
		font-weight: 500;
		font-size: 20px;
	}
	#work_example .work_list li dt .description {
		font-size: 29px;
	}
	#work_example .work_list li dd {
		border-radius: 0 0 20px 20px;
		padding: 40px 30px 30px;
	}
	#work_example .work_list li dd::before {
		border-width: 20px 13px 0 13px;
		top: -1px;
	}
	#work_example .work_list li .info div {
		padding-top: 7px;
		padding-bottom: 10px;
		font-size: 21px;
	}
	#work_example .work_list li .info div::after {
		height: 3px;
		background: url('img/work_example_dot_line.png') space;
	}
	#work_example .work_list li .info .hourly_wage,
	#work_example .work_list li .info.monthly_income {
		font-size: 19px;
	}
	#work_example .work_list li .info .hourly_wage .em,
	#work_example .work_list li .info.monthly_income .em {
		font-size: 21px;
	}
	#work_example .cv_btn {
		margin: 0 auto;
	}
}
@media ( min-width: 961px ) {
	#work_example {
		background: url('img/work_example_before_pc.png') no-repeat top center/cover;
	}
	#work_example::before {
		content: none;
	}
	#work_example::after {
		height: 20vw;
		background: url('img/work_example_after_pc.png') no-repeat center bottom/cover;
		bottom: 0;
	}
	#work_example {
		margin: -115px 0 0;
		padding: 90px 0 85px;
	}
}
@media ( min-width: 601px ) and ( max-width: 960px ) {
	#work_example {
		padding: 80px 0 120px;
	}
	#work_example::before {
		height: 308px;
		
	}
	#work_example::after {
		height: 40vw;
	}
}
@media ( min-width: 601px ) and ( max-width: 1100px ) {
	#work_example .work_list {
		width: 100%;
		max-width: 580px;
		margin: 0 auto 100px;
	}
	#work_example .work_list ul {
		gap: 60px 0;
	}
	#work_example .work_list li .info {
		display: inline-flex;
		flex-direction: column;
	}
	#work_example .work_list li .info > div {
		padding-right: 1em;
		padding-left: 1em;
	}
}
@media ( max-width: 960px ) {
	#work_example::before {
		height: 40vw;
		background: url('img/work_example_before.png') no-repeat center top/cover;
		left: 0;
		top: -1px;
	}
	#work_example::after {
		height: 33.33vw;
		left: 0;
		bottom: -1px;
		background: url('img/work_example_after.png') no-repeat center bottom/cover;
	}
	#work_example .title {
		line-height: 1.3;
	}
}
@media ( max-width: 600px ) {
	#work_example {
		padding: 14.67vw 0 20.53vw;
	}
	#work_example::before {
		background: url('img/work_example_before.png') no-repeat center top/cover;
	}
	#work_example::after {
		background: url('img/work_example_after.png') no-repeat center bottom/cover;
	}
	#work_example .title {
		font-size: 6.67vw;
		line-height: 1.3;
		margin: 0 0 12.67vw;
	}
	#work_example .work_list {
		margin: 0 0 10.67vw;
	}
	#work_example .work_list ul {
		gap: 10.4vw 0;
	}
	#work_example .work_list li {
		border-radius: 2.67vw;
		box-shadow: 0px 0.93vw 0px 0px rgba(164,70,57,1);
	}
	#work_example .work_list li dt {
		border-radius: 2.67vw 2.67vw 0 0;
		padding: 10vw 0 6.93vw;
	}
	#work_example dt::before {
		height: 1.07vw
	}
	#work_example .work_list li dt::after {
		border-width: 3.73vw 2.67vw 0 2.67vw;
		bottom: -1.6vw;
	}
	#work_example .work_list li dt .essential {
		font-size: 4.8vw;
		padding: 1.87vw 0 0;
		width: 35.47vw;
		height: 11.47vw;
		border-radius: 5.73vw;
		border: solid #fff 1.07vw;
		top: -4.8vw;
	}
	#work_example .work_list li dt .pr_point {
		font-size: 5.33vw;
		margin: 0 0 3.2vw;
	}
	#work_example .work_list li dt .description {
		font-size: 6.93vw;
	}
	#work_example .work_list li dd {
		border-radius: 0 0 2.67vw 2.67vw;
		padding: 8.53vw 9.07vw 7.6vw;
	}
	#work_example .work_list li dd::before {
		border-width: 3.73vw 2.67vw 0 2.67vw;
		top: 0;
	}
	#work_example .work_list li .info div {
		padding: 1.87vw 0 3.2vw;
	}
	#work_example .work_list li .info div::after {
		height: 0.53vw;
		background: url('img/work_example_dot_line.png') repeat-x left top/auto 100%;
	}
	#work_example .work_list li .info .hourly_wage,
	#work_example .work_list li .info.monthly_income {
		font-size: 4.53vw;
	}
	#work_example .work_list li .info .hourly_wage .em,
	#work_example .work_list li .info.monthly_income .em {
		font-size: 5.07vw;
	}
}
@media ( min-width: 1101px ) {
	#work_example .work_list ul {
		gap: 0 35px;
	}
	#work_example .work_list li {
		width: calc((100% - 70px) / 3);
	}
}
@media ( max-width: 1100px ) {
	#work_example .work_list ul {
		flex-direction: column;
	}
}
/*--------------------------------------
#three_point
--------------------------------------*/
#three_point {
	overflow-x: hidden;
}
#three_point .point_wrap {
	position: relative;
}
#three_point .point_wrap::before {
	content: '';
	display: block;
	position: absolute;
	z-index: -1;
}
#three_point .point_wrap .point_block {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 5;
	background: url('img/three_point_num_bg.png') no-repeat left top/cover;
}
#three_point .point_wrap .num {
	display: block;
}
#three_point .point_wrap .content {
	display: flex;
}
#three_point .point_wrap .text {
	text-align: left;
}
#three_point .select {
	display: flex;
}
#three_point .select dt {
	position: relative;
	color: #ff6955;
	background: #ffffe0;
	display: flex;
	align-items: center;
	box-sizing: border-box;
}
#three_point .select dt::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
#three_point .select .type dt::before {
	background: url('img/three_point_select_type_icon.png') no-repeat left top/cover;
}
#three_point .select .time dt::before {
	background: url('img/three_point_select_time_icon.png') no-repeat left top/cover;
}
#three_point .select .feature dt::before {
	background: url('img/three_point_select_feature_icon.png') no-repeat left top/cover;
}
#three_point .select dd ul {
	display: grid;
	grid-template-columns: auto 1fr;
}
#three_point .select .feature dd ul li:first-child,
#three_point .select .feature dd ul li:last-child,
#three_point .select .time dd ul li:first-child,
#three_point .select .time dd ul li:nth-child(2) {
	grid-column: 1 / 3;
}
#three_point .select dd li {
	text-align: left;
}
#three_point .select .feature li:nth-child(1),
#three_point .select .feature li:nth-child(4),
#three_point .select .time li:nth-child(1) {
	width: 100%;
}
@media ( min-width: 601px ) {
	#three_point {
		padding: 64px 0 80px;
	}
	#three_point .diamond_title {
		margin: 0 0 47px;
	}
	#three_point div.point1,
	#three_point div.point2 {
		margin: 0 0 63px;
	}
	#three_point div.point3 {
		margin: 0 0 74px;
	}
	#three_point .point_wrap::before {
		width: 100vw;
		height: 248px;
		background: url('img/three_point_point_wrap_before_pc.png') no-repeat left top/100% auto;
		top: 63px;
		left: 0;
		right: 0;
		margin: 0 calc(50% - 50vw);
	}
	#three_point .point_wrap .point_block {
		width: 138px;
		height: 138px;
		margin: 0 auto 60px;
	}
	#three_point .point_wrap .point_block .num {
		width: 48px;
	}
	#three_point .point_wrap .title {
		font-size: 35px;
		margin: 0 0 60px;
	}
	#three_point .point_wrap .content {
		margin-right: auto;
		margin-left: auto;
	}
	#three_point .point3 .content {
		margin-bottom: 50px;
	}
	#three_point .point_wrap .photo img {
		border-radius: 20px;
	}
	#three_point .point_wrap .text {
		line-height: 1.82;
	}
	#three_point .point_wrap .performance {
		width: 572px;
		margin: 62px auto 0;
	}
	#three_point .select dt {
		height: 52px;
		border-radius: 26px;
		border: #ffbc4b solid 3px;
		padding: 0 25px 0 65px;
		margin: 0 0 17px;
		font-size: 17px;
	}
	#three_point .select dt::before {
		width: 28px;
		height: 31px;
		left: 25px;
	}
	#three_point .select dd {
		padding: 0 25px;
	}
	#three_point .select dd ul {
		gap: 10px 15px;
	}
	#three_point .select dd li {
		font-size: 17px;
	}
	#three_point .cv_btn {
		margin: 0 auto;
	}
	#three_point .select .type dd ul li:first-child,
	#three_point .select .type dd ul li:last-child {
		grid-column: 1 / 3;
	}
	#three_point .select .type li:nth-child(1),
	#three_point .select .type li:nth-child(4) {
		width: 100%;
	}
}
@media ( min-width: 961px ) {
	#three_point .point_wrap .content {
		max-width: 850px;
		gap: 0 60px;
		align-items: center;
	}
	#three_point .point2 .content {
		flex-direction: row-reverse;
	}
	#three_point .point_wrap .photo {
		flex-shrink: 0;
		max-width: 450px;
	}
	#three_point .point_wrap .select {
		gap: 0 38px;
	}
	#three_point .point_wrap .select dl {
		width: calc((100% - 76px) / 3);
	}
	#three_point .point_wrap .select dt div {
		text-align: left;
	}
	#three_point .point_wrap .select dt span {
		display: inline-block;
	}
}
@media ( min-width: 601px ) and ( max-width: 960px ) {
	#three_point .point_wrap .content {
		width: 100%;
		max-width: 700px;
		gap: 50px 0;
	}
	#three_point .point_wrap .photo {
		max-width: 580px;
	}
	#three_point .point_wrap .select {
		width: 100%;
		max-width: 580px;
		margin: 0 auto;
	}
	#three_point .point_wrap .select {
		gap: 40px 0;
	}
}
@media ( max-width: 960px ) {
	#three_point .point_wrap .title {
		line-height: 1.3;
	}
	#three_point .point_wrap .content {
		flex-direction: column;
	}
	#three_point .point_wrap .photo {
		margin: 0 auto;
	}
	#three_point .point_wrap .select {
		flex-direction: column;
	}
}
@media ( max-width: 600px ) {
	#three_point {
		padding: 15.6vw 0 11.2vw;
	}
	#three_point .diamond_title {
		margin: 0 0 8.67vw;
	}
	#three_point div.point1,
	#three_point div.point2 {
		margin: 0 0 6.93vw;
	}
	#three_point div.point3 {
		margin: 0 0 10vw;
	}
	#three_point .point_wrap::before {
		width: 100vw;
		height: 33.07vw;
		background: url('img/three_point_point_wrap_before.png') no-repeat left top/cover;
		top: 13.33vw;
		left: -4.67vw;
	}
	#three_point .point_wrap .point_block {
		width: 27.73vw;
		height: 27.73vw;
		margin: 0 auto 8vw;
	}
	#three_point .point_wrap .point_block .num {
		width: 9.33vw;
	}
	#three_point .point_wrap .title {
		font-size: 6.67vw;
		margin: 0 0 8vw;
	}
	#three_point .point_wrap .content {
		gap: 5.6vw 0;
	}
	#three_point .point3 .content {
		margin: 0 0 7.33vw;
	}
	#three_point .point_wrap .photo img {
		border-radius: 2.67vw;
	}
	#three_point .point_wrap .text {
		line-height: 1.71;
	}
	#three_point .point1 .text {
		margin: 0 0 8vw;
	}
	#three_point .select {
		gap: 8vw 0;
	}
	#three_point .select dt {
		height: 14.67vw;
		border-radius: 7.33vw;
		border: #ffbc4b solid 0.53vw;
		padding: 0 0 0 18.4vw;
		margin: 0 0 5.33vw;
	}
	#three_point .select dt::before {
		width: 8vw;
		height: 8.8vw;
		left: 6.93vw;
	}
	#three_point .select dd ul {
		gap: 3.2vw 3.33vw;
	}
	#three_point .select dd li {
		font-size: 4.67vw;
	}
}
@media ( min-width: 961px ) and ( max-width: 1100px ) {
	#three_point .select dd ul {
		grid-template-columns: 1fr;
	}
	#three_point .select .feature dd li {
		grid-column: 1 / 3;
	}
}
/*--------------------------------------
#flow
--------------------------------------*/
#flow .step_list {
	display: flex;
}
#flow dl {
	background: #fff;
	position: relative;
}
#flow dl::before {
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
}
#flow dt {
	position: relative;
	color: #ff6955;
}
#flow dt .num {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
}
#flow dd .text {
	text-align: left;
}
@media ( min-width: 601px ) {
	#flow {
		padding: 78px 0 79px;
	}
	#flow .flow_title {
		font-size: 35px;
		margin: 0 0 83px;
	}
	#flow dl {
		border-radius: 20px;
		border: #ffbc4b 3px solid;
	}
	#flow dl::before {
		width: 84px;
		height: 41px;
		background: url('img/flow_semicircle_pc.png') no-repeat;
		top: -40px;
	}
	#flow dt {
		font-size: 27px;
		padding: 45px 0 0;
	}
	#flow dt .num {
		width: 23px;
		height: 35px;
		top: -16px;
	}
	#flow dd {
		padding: 20px 25px 28px;
	}
	#flow dl .illust {
		width: 100%;
		margin: 0 auto 24px;
	}
	#flow dd .text {
		line-height: 1.47;
	}
}
@media ( min-width: 961px ) {
	#flow {
		background: #ffe083 url('img/flow_bg_pc.jpg') no-repeat left top/100% auto;
	}
	#flow .step_list {
		gap: 0 40px;
	}
	#flow dl {
		width: calc((100% - 80px) / 3);
	}
	#flow dl .illust {
		max-width: 237px;
	}
	#flow dd .text {
		font-size: 17px;
	}
}
@media ( min-width: 601px ) and ( max-width: 960px ) {
	#flow .step_list {
		width: 100%;
		max-width: 700px;
		margin: 0 auto;
	}
	#flow .step_list {
		gap: 60px 0;
	}
}
@media ( max-width: 960px ) {
	#flow {
		background: #ffe083 url('img/flow_bg.jpg') no-repeat left top/100% auto;
	}
	#flow .step_list {
		flex-direction: column;
	}
}
@media ( max-width: 600px ) {
	#flow {
		padding: 15.47vw 0 4.8vw;
	}
	#flow .flow_title {
		font-size: 6.67vw;
		margin: 0 0 21.6vw;
	}
	#flow .step_list {
		gap: 14.4vw 0;
	}
	#flow dl {
		border-radius: 2.67vw;
		border: #ffbc4b 0.67vw solid;
	}
	#flow dl::before {
		width: 24vw;
		height: 11.2vw;
		background: url('img/flow_semicircle.png') no-repeat left top/cover;
		top: -11.2vw;
	}
	#flow dt {
		font-size: 6.67vw;
		padding: 11.73vw 0 0;
	}
	#flow dt .num {
		width: 6.67vw;
		height: 9.87vw;
		top: -4.27vw;
	}
	#flow dd {
		padding: 4.4vw 6.67vw 8.67vw;
	}
	#flow dl .illust {
		width: 76.8vw;
	}
	#flow .step1 .illust {
		margin: 0 auto 2.27vw;
	}
	#flow .step2 .illust {
		margin: 0 auto 6.27vw;
	}
	#flow .step3 .illust {
		margin: 0 auto 4.67vw;
	}
	#flow dd .text {
		line-height: 1.58;
	}
}

/*--------------------------------------
#elder_voice
--------------------------------------*/
#elder_voice .slide {
	position: relative;
	overflow: hidden;
}
#elder_voice .slide .swiper {
	overflow: visible;
}
#elder_voice .slide .swiper-slide {
	box-sizing: border-box;
	background-image: linear-gradient(to left, rgba(255, 96, 0, 1), #ffca70);
	height: auto;
}
#elder_voice .slide .name {
	position: relative;
	box-sizing: border-box;
	color: #fff;
	background-color: #ff869d;
	font-feature-settings: 'palt';
}
#elder_voice .slide .text_area {
	background: #fff;
}
#elder_voice .slide .avatar {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
}
#elder_voice .slide .text {
	text-align: left;
}
#elder_voice .slide .result {
	display: inline-block;
}
#elder_voice .slide .result dl {
	display: flex;
}
#elder_voice .slide .result dt,
#elder_voice .slide .result dd {
	color: #fff;
	white-space: nowrap;
}
#elder_voice .swiper-button-next,
#elder_voice .swiper-button-prev {
	margin-top: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(72,72,72,0.7);
}
#elder_voice .swiper-button-prev::after,
#elder_voice .swiper-rtl .swiper-button-next::after,
#elder_voice .swiper-button-next:after,
#elder_voice .swiper-rtl .swiper-button-prev:after {
	content: '';
	display: block;
}
#elder_voice .swiper-button-prev::after {
	background: url('img/elder_voice_slide_prev_arrow.png') no-repeat top left/cover;
}
#elder_voice .swiper-button-next::after {
	background: url('img/elder_voice_slide_next_arrow.png') no-repeat top left/cover;
}
@media ( min-width: 601px ) {
	#elder_voice {
		padding: 73px 0 83px;
	}
	#elder_voice .diamond_title {
		margin: 0 0 30px;
	}
	#elder_voice .slide .swiper {
		padding: 96px 0 0;
	}
	#elder_voice .slide .swiper-slide {
		border-radius: 20px;
		padding: 12px;
	}
	#elder_voice .slide .text_area {
		padding: 27px 25px 16px;
		border-radius: 10px;
	}
	#elder_voice .slide .name {
		margin: 0 auto 20px;
		padding: 10px 0 13px;
		border-radius: 23px;
	}
	#elder_voice .slide .name .honorific_title {
		font-size: 15px;
	}
	#elder_voice .slide .name .gender {
		font-size: 18px;
	}
	#elder_voice .slide .avatar {
		width: 160px;
		top: -96px;
	}
	#elder_voice .slide .text {
		font-size: 16px;
		line-height: 1.69;
	}
	#elder_voice .slide .result {
		padding: 16px 15px 28px;
	}
	#elder_voice .slide .result dl:not(:last-of-type) {
		margin: 0 0 8px;
	}
	#elder_voice .slide .result dt,
	#elder_voice .slide .result dd {
		font-size: 15px;
	}
	#elder_voice .swiper-button-next,
	#elder_voice .swiper-button-prev {
		top: 305px;
		width: 54px;
		height: 54px;
	}
	#elder_voice .swiper-button-prev::after,
	#elder_voice .swiper-rtl .swiper-button-next::after,
	#elder_voice .swiper-button-next:after,
	#elder_voice .swiper-rtl .swiper-button-prev:after {
		width: 18px;
		height: 28px;
	}
}
@media ( min-width: 961px ) {
	#elder_voice .slide_wrap {
		max-width: 1060px;
		margin: 0 auto;
		padding: 0 20px;
	}
	#elder_voice .swiper-button-prev {
		left: 29.5%;
	}
	#elder_voice .swiper-button-next {
		right: 29.5%;
	}
	/* スライド未実行 */
	#elder_voice .slide .swiper:not(.swiper-initialized) .swiper-wrapper {
		justify-content: center;
	}
	#elder_voice .slide .swiper:not(.swiper-initialized) .swiper-slide:last-child:nth-child(3) {
		order: -1;
	}
	#elder_voice .slide .swiper:not(.swiper-initialized) .swiper-button-next,
	#elder_voice .slide .swiper:not(.swiper-initialized) .swiper-button-prev {
		display: none;
	}
}
@media ( min-width: 1101px ) {
	#elder_voice .slide .swiper:not(.swiper-initialized) .swiper-wrapper {
		gap: 0 78px;
	}
	#elder_voice .slide .swiper:not(.swiper-initialized) .swiper-slide {
		width: calc((100% - 156px)/3);
	}
}
@media ( min-width: 961px ) and ( max-width: 1100px ) {
	#elder_voice .slide .swiper:not(.swiper-initialized) .swiper-wrapper {
		gap: 0 30px;
	}
	#elder_voice .slide .swiper:not(.swiper-initialized) .swiper-slide {
		width: calc((100% - 60px)/3);
	}
}
@media ( min-width: 601px ) and ( max-width: 960px ) {
	#elder_voice .slide .swiper-slide {
		width: 350px;
	}
}
@media ( max-width: 960px ) {
	#elder_voice .slide .swiper-slide {
	opacity: 0.3;
	transition: opacity 0.8s;
}
	#elder_voice .slide .swiper-slide.swiper-slide-active {
		opacity: 1;
	}
}
@media ( max-width: 600px ) {
	#elder_voice {
		padding: 15.47vw 0 9.87vw;
	}
	#elder_voice .diamond_title {
		margin: 0 0 8.67vw;
	}
	#elder_voice .slide .swiper {
		padding: 29.33vw 0 0;
	}
	#elder_voice .slide .swiper-slide {
		width: 74.67vw;
		border-radius: 2.67vw;
		padding: 1.6vw;
	}
	#elder_voice .slide .name {
		border-radius: 4.67vw;
		margin: 0 auto 6.67vw;
		padding: 2.4vw 0 3.2vw;
	}
	#elder_voice .slide .text_area {
		padding: 12.67vw 6vw 5.33vw;
		border-radius: 2.67vw 2.67vw 0 0;
	}
	#elder_voice .slide .avatar {
		width: 48.4vw;
		height: 48.4vw;
		top: -29.33vw;
	}
	#elder_voice .slide .text {
		font-size: 4.27vw;
		line-height: 1.56;
		font-weight: 400;
	}
	#elder_voice .slide .result {
		padding: 4vw 8.67vw 5.33vw;
	}
	#elder_voice .slide .result dl:not(:last-of-type) {
		margin: 0 0 2vw;
	}
	#elder_voice .slide .result dt,
	#elder_voice .slide .result dd {
		font-size: 3.73vw;
	}
	#elder_voice .swiper-button-next,
	#elder_voice .swiper-button-prev {
		top: 72.4vw;
		width: 11.2vw;
		height: 11.2vw;
	}
	#elder_voice .swiper-button-prev {
		left: 4vw;
	}
	#elder_voice .swiper-button-next {
		right: 4vw;
	}
	#elder_voice .swiper-button-prev::after,
	#elder_voice .swiper-rtl .swiper-button-next::after,
	#elder_voice .swiper-button-next:after,
	#elder_voice .swiper-rtl .swiper-button-prev:after {
		width: 3.87vw;
		height: 5.87vw;
	}
}

/*--------------------------------------
#qa
--------------------------------------*/
#qa {
	background: #ffd6aa;
}
#qa dd {
	text-align: left;
}
#qa dt {
	background: #fff;
	position: relative;
	cursor: pointer;
}
#qa dt::before {
	content: '';
	display: block;
	background: url('img/qa_dt_arrow.png') no-repeat left top/cover;
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
}
#qa dl.active dt::before {
	transform: rotateX(180deg);
}
#qa dt .num {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	background: #ff8400;
	border-radius: 50%;
}
#qa dt .num {
	line-height: 1;
}
#qa dd {
	background: #fff0f3;
	display: none;
}
@media ( min-width: 601px ) {
	#qa {
		padding: 80px 0 85px;
	}
	#qa .qa_title {
		font-size: 35px;
		margin: 0 0 84px;
	}
	#qa dl {
		border-radius: 20px;
		border: solid 2px #ff8400;
	}
	#qa dl:not(:last-of-type) {
		margin: 0 0 58px;
	}
	#qa dt,
	#qa dd {
		font-size: 18px;
	}
	#qa dt {
		border-radius: 20px;
		padding: 56px 30px 59px;
		line-height: 1.39;
	}
	#qa dt::before {
		width: 28px;
		height: 18px;
		bottom: 17px;
	}
	#qa .active dt {
		border-radius: 20px 20px 0 0;
	}
	#qa dt .num {
		width: 67px;
		height: 67px;
		top: -36px;
	}
	#qa dt .num .img {
		width: 28px;
		height: 17px;
	}
	#qa dd {
		padding: 28px 35px;
		line-height: 1.56;
		border-radius: 0 0 20px 20px;
	}
}
@media ( max-width: 960px ) {
	#qa dt {
		text-align: left;
	}
}
@media ( max-width: 600px ) {
	#qa {
		padding: 15.6vw 0 5.33vw;
	}
	#qa .qa_title {
		font-size: 6.67vw;
		margin: 0 0 18vw;
	}
	#qa dl {
		border-radius: 2.67vw;
		border: solid 0.27vw #ff8400;
	}
	#qa dl:not(:last-of-type) {
		margin: 0 0 12.27vw;
	}
	#qa dt {
		border-radius: 2.67vw;
		padding: 13.6vw 7.33vw 11.73vw;
		line-height: 1.39;
	}
	#qa .active dt {
		border-radius: 2.67vw 2.67vw 0 0;
	}
	#qa dt::before {
		width: 8vw;
		height: 5.33vw;
		bottom: 3.47vw;
	}
	#qa dt .num {
		width: 17.33vw;
		height: 17.33vw;
		top: -8.93vw;
	}
	#qa dt .num .img {
		width: 7.2vw;
		height: 4.27vw;
	}
	#qa dd {
		padding: 7.73vw 7.33vw 6.93vw;
		line-height: 1.39;
		border-radius: 0 0 2.67vw 2.67vw;
	}
}

/*--------------------------------------
.page_bottom_cv_area
--------------------------------------*/
@media ( min-width: 601px ) {
	.page_bottom_cv_area {
		padding: 64px 0 5px;
	}
	.page_bottom_cv_area .cv_btn {
		margin: 0 auto;
	}
}
@media ( max-width: 600px ) {
	.page_bottom_cv_area {
		padding: 10.13vw 0 0.8vw;
	}
}

/*--------------------------------------
#foot
--------------------------------------*/
@media ( min-width: 601px ) {
	#foot {
		padding: 64px 0;
	}
	#foot .copyright {
		font-size: 13px;
	}
}
@media ( max-width: 600px ) {
	#foot {
		padding: 12.27vw 0;
	}
	#foot .copyright {
		font-size: 2.4vw;
	}
}
