@media screen and (min-width:768px){
	.sp_only{
		display: none!important;
	}
}/*@media screen and (min-width:768px){*/

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


	/*
	------------------------------------
	共通パーツ
	------------------------------------
	*/
	.container{
		width: calc(345 / 375 * 100vw);
		max-width: 450px;
		padding-inline: 0;
		margin-inline: auto;
	}

	.c_blue_button{
		width:300px;
		min-height: 50px;
	}

	.c_blue_button::after{
		width:7px;
		height:13px;
		right:24px;
	}

	/*
	------------------------------------
	ヘッダー
	------------------------------------
	*/

	header{

	}

	header .header_inner{
		padding-inline: 12px;
	}

	header .header_flex{
		min-height: 70px;
		padding:6px 0;
	}


	header .header_left{
		flex-shrink: 0;
	}

	header .header_logo{
		display: block;
		width:160px;

	}

	header .header_tel{

		gap:8px;
		font-size: 18px;
		font-weight: 700;
		width: fit-content;
	}

	header .header_tel::before{
		width:24px;
		height:18px;
	}

	header .header_tel_time{
		font-size: 10px;

		transform-origin: right;
		display: flex;
		justify-content: flex-end;
	}


	/*
	------------------------------------
	オプションページ
	------------------------------------
	*/

	.c_info_section{
		margin-top: 72px;
		padding-top:36px;
		padding-bottom: 48px;
	}

	.c_info_section .sec_head{
		font-size: 24px;
	}

	.c_info_section .info_flex{
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		gap:30px 0;
		margin-top: 40px;
	}

	.c_info_section .info_left{
		/* flex-shrink: 0; */
		width:100%;
	}

	.c_info_section .info_right{
		max-width: 100%;
	}

	.c_info_section .info_head{
		font-weight: 700;
		letter-spacing: 0.05em;
	}

	.c_info_section .info_text{
		margin-top: 8px;
		line-height: 2;
		letter-spacing: 0.05em;
	}

	.c_info_section .info_button_list{
		margin-top: 48px;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap:20px;
	}

	.c_info_section .info_button{
		width:236px;
		min-height: 50px;
		padding:8px 24px;
	}

	.c_info_section .info_button::after{
		width:7px;
		height:13px;
	}

	/*
	-----------------------------------
	フッター
	------------------------------------
	*/

	footer{
		padding-top: 100px;
		padding-bottom: 24px;
	}

	footer .footer_contents{
		width: fit-content;
		margin-inline: auto;
	}

	footer .footer_catch01{
		font-size: 20px;
		font-weight: 700;
		line-height: 1.4;
		text-align: center;
	}

	footer .footer_catch02{
		font-size: 20px;
		font-weight: 700;
		text-align: center;
	}

	footer .footer_button_list{
		display: flex;
		justify-content: center;
		align-items: flex-start;
		gap:36px;
		margin-top: 44px;
	}

	footer .footer_button_block p{
		font-size: 20px;
		font-weight: 700;
		text-align: center;
	}

	footer .footer_logo_list{
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		flex-wrap: wrap;
		gap:36px;
		margin-top: 80px;
	}

	footer .footer_logo01{
		width:265px;
	}

	footer .footer_logo02{
		width:120px;
	}

	footer .footer_logo03{
		width:300px;
	}

	footer .footer_address{
		margin-top: 24px;
		font-size: 14px;
		line-height: 1.7;
	}

	footer .footer_copy{
		margin-top: 40px;
		text-align: center;
		font-weight: 700;
	}

	/*
	------------------------------------
	トップ
	------------------------------------
	*/

	.top_section{

	}

	.top_section .sec_head{
		font-size: 24px;
		font-weight: 700;
		letter-spacing: 0.04em;
	}

	.top_fv_section{

	}

	.top_fv_section .fv_inner{
		position: relative;
		background-image: url('../img/top/fv_bg.jpg');
		background-position: top;
		padding-top: 100px;
		padding-bottom: 100px;
	}

	.top_fv_section .fv_text{
		width: 95%;
		max-width: 350px;
		margin-inline: auto;
	}

	.top_fv_section .fv_chara{
		max-width: 340px;
	}

	.top_about_section{
		padding-top: 100px;
	}

	.top_about_section .about_text{
		margin-top: 40px;
		line-height: 1.75;
		letter-spacing: 0.05em;
		text-align: left;
	}

	.top_about_section .button_flex{
		margin-top: 40px;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		gap:16px 40px;
	}

	.top_about_section .button{
		width:300px;
		min-height: 50px;
	}

	.top_about_section .button::after{
		width:7px;
		height:13px;
		right:24px;
	}

	.top_manage_section{
		padding-top: 100px;
	}

	.top_manage_section .manage_text{
		margin-top: 24px;
		text-align: left;
		font-size: 18px;
	}

	.top_manage_section .manage_flex{
		display: flex;
		justify-content: center;
		flex-direction: column;
		gap:0;
		margin-top: 80px;
	}

	.top_manage_section .manage_arrow{
		flex-shrink: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 30px 0 48px;
	}

	.top_manage_section .manage_arrow::after{
		width:35px;
		height:29px;
		background-image: url('../img/common/icon_arrow_right_blue.svg');
		transform: rotateZ(90deg);
	}

	.top_manage_section .manage_box{
		width:100%;

	}

	.top_manage_section .manage_box_inner{
		padding:36px 16px 20px;
	}

	.top_manage_section .manage_kind{
		font-size: 20px;
	}

	.top_manage_section .manage_icon{
		width:161px;
	}


	.top_manage_section .manage_list{
		margin-top: 32px;
		gap:10px;
	}


	.top_manage_section .manage_box.after .manage_icon::before{
		width:219px;
		height:164px;
	}

	.top_effect_section{
		padding-top: 80px;
	}

	.top_effect_section .effect_frame{
		max-width: 890px;
		margin-inline: auto;
		margin-top: 40px;
	}

	.top_service_section{
		margin-top: 80px;
	}

	.top_service_section .service_inner{

	}

	.top_service_section .service_head{
		min-height: 90px;
		padding:6px 10px;
		gap:4px;
	}

	.top_service_section .service_head_ja{
		font-size: 14px;
		font-weight: 400;
	}

	.top_service_section .service_head_en{
		font-size: 32px;
	}

	.top_service_section .service_list{
		display: flex;
		flex-wrap: wrap;
	}

	.top_service_section .service_item{
		width:50%;

	}

	.top_service_section .service_item + .service_item{
		border-left:none;
	}

	.top_service_section .service_item:nth-child(even){
		border-left:1px solid;
	}

	.top_service_section .service_icon{
		width:100%;
		height:340px;
		padding:16px;
	}

	.top_service_section .service_name{
		height:270px;

	}

	.top_service_section .service_info_area{
		/* height:100%; */
		padding:12px;
		min-height: 75px;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.top_service_section .service_link{
		font-size: 14px;
	}


	.top_flow_section{
		padding-top: 80px;
	}

	.top_flow_section .flow_head{
		min-height: 56px;
		width: 100%;
		padding:8px 24px;
		font-size: 18px;
		font-weight: 700;
	}

	.top_flow_section .flow_text{
		margin-top: 40px;
		font-size: 18px;
		font-weight: 700;
		line-height: 1.6;
		text-align: left;
	}

	.top_flow_section .flow{
		max-width: 1110px;
		margin-inline: auto;
		margin-top: 40px;
	}

	.top_flow_section .flow_info{
		margin-top: 48px;
		line-height: 2;
		letter-spacing: 0.05em;
		text-align: left;
	}

	/*
	------------------------------------
	サービス紹介ページ
	------------------------------------
	*/

	.service_section .sec_head{
		
		font-size: 24px;
		line-height: 1.4;
	}

	.service_fv_section{
		padding-top: 100px;
	}

	.service_fv_section .fv_inner::before{

		height:300px;
	}

	.service_fv_section .page_title{
		font-size: 28px;
		letter-spacing: 0.1em;
	}

	.service_fv_section .fv_deco{
		height:300px;
		display: flex;
		justify-content: center;
		align-items: center;
	}


	.service_guide_section{
		padding-top: 64px;
	}

	.service_guide_section .guide_contents{
		max-width: 1060px;
		margin-inline: auto;
		margin-top: 80px;
	}

	.service_guide_section .button_flex{
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		gap:24px;
	}

	.service_guide_section .button{
		width: 236px;
		min-height: 50px;
		padding: 8px 24px;

	}

	.service_guide_section .button::after {
		width: 7px;
		height: 13px;
	}

	.service_guide_section .sub_head{
		margin-top: 24px;
		font-size: 20px;
		text-align: center;
	}

	.service_guide_section .guide_text{
		margin-top: 24px;
		line-height: 2;
		letter-spacing: 0.05em;
	}

	.service_worry_section{
		padding-top: 96px;
	}



	.service_worry_section .worry_flex{
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		gap:30px 0;
		margin-top: 80px;
	}

	.service_worry_section .worry_left{
		width:222px;
	}

	.service_worry_section .worry_right{

	}

	.service_worry_section .worry_list li{
		font-size: 16px;
		font-weight: 700;
	}

	.service_worry_section .worry_list li + li{
		margin-top: 6px;
	}

	.service_worry_section .worry_list li .num{
		flex-shrink: 0;

	}


	.service_spec_section{
		padding-top: 120px;
	}

	.service_spec_section .guide_list{
		width: fit-content;
		margin-inline: auto;
		margin-top: 32px;
	}

	.service_spec_section .guide_list li{
		padding-left: 28px;
		font-size: 18px;
	}

	.service_spec_section .guide_list li::before {
		font-size: 18px;
	}

	.service_spec_section .guide_list li + li{
		margin-top: 10px;
	}

	.service_spec_section .spec_list{
		max-width: 1000px;
		margin-inline: auto;
		margin-top: 64px;
	}


	.service_spec_section .spec_item{
		display: flex;
		align-items: center;
		flex-direction: column;
		border: 2px solid #0A305B;
		gap:24px 0;
		padding:24px 16px;
	}

	.service_spec_section .spec_item + .spec_item{
		margin-top: 24px;
	}
	.service_spec_section .spec_num{
		width: auto;
		min-width: auto;
		padding-right: 0;
		-webkit-text-stroke-width: 3px;

		font-size: 80px;
	}

	.service_spec_section .spec_head{
		font-size: 20px;
		font-weight: 700;
		line-height: 1.5;
		letter-spacing: 0.05em;
	}

	.service_spec_section .spec_text{
		margin-top: 12px;
		line-height: 2;
		letter-spacing: 0.05em;
	}

	.service_voice_section{
		padding-top: 120px;
		padding-bottom: 80px;
	}

	.service_voice_section .voice_flex{
		margin-top: 64px;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		gap:40px;
	}

	.service_voice_section .voice_left{
		width:200px;
		flex-shrink: 0;
	}

	.service_voice_section .voice_right{
		width:100%;
	}

	.service_voice_section .voice_name{
		font-size: 22px;
		font-weight: 700;
		line-height: 1.5;
		letter-spacing: 0.05em;
	}

	.service_voice_section .voice_text{
		margin-top: 24px;
		line-height: 2;
		letter-spacing: 0.05em;
	}

}/*@media screen and (max-width:767px){*/