@charset "UTF-8";
/*
Theme Name:NEW_PF
Author: NEW_PF
Description: portfolioサイトのためのテーマ
Version:1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/license/gpl-2.0.html
*/
.sp{
	display:none;
}
html{
	scroll-behavior: smooth;
  	scroll-padding-top: 120px;
}
body{
	margin:0;
	padding:0;
	font-family:'Noto Sans JP', sans-serif;
	font-feature-settings: "palt" 1, "trad" 1;
	-webkit-font-smoothing: antialiased;
}
a{
	 text-decoration: none;
}
img{
	vertical-align: top;
	width:100%;
}
h1,h2,h3,h4,h5,h6,p{
	margin:0;
}
/*headerはここから*/
header{
	width: 100%;
	height: 5rem;
	transition: .3s;
	position:fixed;
	overflow: hidden;
	z-index: 9999;
	background-color: white;
	display:flex;
	align-items: center;
}
.is-animation {
    position:fixed;
}
.header-width{
	max-width:1350px;
	width:95%;
	margin:0 auto;
	display:flex;
	justify-content: space-between;
	align-items: center;
	gap:30px;
}
.logo{
   overflow:hidden;
   display:flex;
   gap:20px;
   transition: .3s;
}
.logo img{
	 width:170px;
}
.logo p{
	font-size:13px;
	font-weight:600;
	letter-spacing:-0.03em;
	color:#919191;
	position:relative;
	top:2px;
}
.menu{
	 list-style: none;
	 padding-inline-start:0px;
	 display: flex;
	 flex-direction: row;
	 flex-wrap: wrap;
	 margin:0;
	 gap:20px;
}
.menu li {
	 font-size:15px;
	 margin:0 0 0 0;
	 font-weight:500;
	 letter-spacing:0.02em;
}
.menu li a{
	 color: #302D2C;
}
#blackback{
	display:none;
}
.cta-pc{
	display:flex;
	gap:6px;
}
.cta-pc a{
	padding:10px 20px;
	font-size:14px;
	font-weight:600;
	display:flex;
	gap:7px;
	color:white;
	border-radius: 3px;
}
.cta-pc a:nth-child(1){
	background-color:#3F3F3F;
}
.cta-pc a:nth-child(2){
	background-color:#FF4800;
}
.cta-pc a span:nth-child(1) img{
	vertical-align: middle;
}
.cta-pc a:nth-child(1) span:nth-child(1){
	width:15px;
}
.cta-pc a:nth-child(2) span:nth-child(1){
	width:22px;
}
/*共通はここから*/
.common-width{
	max-width:1150px;
	width:90%;
	margin:0 auto;
}
.common-title{
	text-align: center;
}
.common-title h3{
	font-size:25px;
	color:#FF4800;
	font-family: "Roboto", sans-serif;
	text-transform: uppercase;
	letter-spacing: -0.02em;
}
.common-title h2{
	font-size:35px;
	font-weight:800;
	letter-spacing: -0.02em;
}
/* トップページ */
.top-content{
	background-color:#F1F1F1;
	padding:calc(5rem + 50px) 0 50px 0;
}
.top-content>div{
	display:flex;
	flex-direction: row-reverse;
	align-items: center;
	justify-content: space-between;
	gap:70px;
}
.top-content-right{
	width:660px;
	position:relative;
}
.top-content-right-img{
	width:660px;
	filter:drop-shadow(0px 0px 19px rgba(0,0,0,0.05));
}
.top-gif-1{
	width:91px;
	position:absolute;
	bottom:31px;
	left:39px;
	z-index:1;
}
.top-gif-2{
	width:91px;
	position:absolute;
	top:12px;
	right:12px;
	z-index:1;
}
.top-content-left{
	max-width:400px;
	width:42%;
}
.fukidashi{
	max-width:383px;
	width:100%;
	position: relative;
}
.fukidashi p{
	position: absolute;
	top:10px;
	left: 50%;
  	transform: translateX(-50%);
	font-size:24px;
	font-weight:bold;
	white-space: nowrap;
}
.top-content-title{
	letter-spacing: -0.05em;
	line-height: 1;
}
.orange-big{
	color:#FF4800;
	font-size:53px;
}
.orange-small{
	color:#FF4800;
	font-size:28px;
	position: relative;
	top:-9px;
	margin:0 0 0 5px;
}
.black-small{
	font-size:46px;
	position: relative;
	top:-9px;
	margin-left:90px;
}
.black-big{
	font-size:63px;
	position: relative;
	top:-7px;
	margin:0 0 0 5px;
}
.black-big span{
	font-size: clamp(16px, 5vw, 73px);
}
.top-pickup{
	display:flex;
	flex-direction: column;
	gap:5px;
	padding:0 0 0 20px;
}
.top-pickup li{
	font-size:17px;
	font-weight:400;
	letter-spacing: -0.05em;
	padding:0 0 0 3px;
}
.top-pickup li::marker {
  content: "✅ ";
}
.top-pickup li span{
	font-weight:bold;
	color:#FF4800;
	text-decoration: underline;
	text-decoration-color: #000;
	text-underline-offset: 4px;
	margin:0 3px;
	text-decoration-thickness: 1px;
}
.top-content-left-read{
	font-size:16px;
	font-weight: 500;
	letter-spacing: -0.01em;
	margin-top:25px;
}
.top-content-left a{
	background-color: #FF4800;
	color:white;
	font-size:20px;
	font-weight:600;
	letter-spacing:-0.05em;
	width:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	gap:15px;
	padding:20px 0;
	border-radius:8px;
	margin-top:12px;
}
.top-content-left a span:nth-child(1){
	width:26px;
	display:block;
	position:relative;
	top:-2px;
}
.top-content-left a span:nth-child(1) img{
	vertical-align: middle;
}
.top-problem{
	padding:50px 0 0 0;
}
.top-problem-list{
	display:grid;
	grid-template-columns: repeat(4, 1fr);
	gap:20px;
	margin-top:30px;
}
.top-problem-list-detail{
	display:flex;
	align-items: center;
	gap:15px;
	background-color: #3F3F3F;
	padding:23px;
	border-radius:12px;
}
.top-problem-list-detail div{
	width:60px;
}
.top-problem-list-detail h4{
	font-size:16px;
	font-weight:500;
	color:white;
	line-height: 1.3;
}
.problem-arrow{
	width:57px;
	margin:30px auto 35px;
}
.main-problem-content{
	display:flex;
	justify-content: space-between;
	gap:50px;
}
.main-problem-content-left{
	max-width:485px;
	width:45%;
}
.main-problem-content-left p{
	font-size:16px;
	font-weight:500;
	margin-top:20px;
	line-height:1.75;
	text-align:justify;
}
.main-problem-content-right{
	width:612px;
	position:relative;
}
.main-problem-content-right h2{
	display:none;
}
.main-problem-img{
	width:612px;
	border-radius: 15px;
}
.main-problem-sub-list{
	display:grid;
	grid-template-columns: repeat(2, 1fr);
	gap:10px;
	width:290px;
	position:absolute;
	top: 50%;
  	transform: translateY(-50%);
	right:30px;
}
.main-problem-sub-list p{
	background-color:white;
	color:#606060;
	font-size:13px;
	font-weight:500;
	letter-spacing:-0.03em;
	line-height: 1.4;
	text-align:center;
	border-radius:6px;
	padding:6px 0;
}
.convert-cta{
	margin:100px auto;
	display:block;
	width:950px;
}
.convert-cta img{
	border-radius:8px;
}
.top-merit-list{
	display:grid;
	grid-template-columns: repeat(4, 1fr);
	gap:20px;
	margin-top:30px;
}
.top-merit-list-detail{
	background-color:#3B3B3B;
	padding:16px 18px 25px;
	border-radius:12px;
}
.top-merit-list-detail div>img{
	border-radius:12px;
}
.top-merit-list-detail h3{
	font-size:17px;
	color:white;
	margin:17px 0 10px 0;
}
.top-merit-list-detail p{
	font-size:14px;
	color:white;
}
.top-features{
	margin-top:65px;
}
.top-features-list{
	display:grid;
	grid-template-columns: repeat(3, 1fr);
	gap:30px;
	margin-top:30px;
}
.top-features-list-detail h3{
	font-size:20px;
	letter-spacing:-0.02em;
	margin:25px 0 10px 0;
}
.top-features-list-detail p{
	font-size:17px;
	font-weight:500;
	line-height:1.7;
	text-align:justify;
}
.top-voice-slide{
	margin:28px 0 0 0;
	padding:0;
	position:relative;
}
.top-voice-slide .slick-slide {
  opacity: .5;
  transition: opacity .3s ease;
}
.top-voice-slide .slick-center {
  opacity: 1;
}
.top-voice-slide li{
	background-color:#F7F7F7;
	border-radius:20px;
	padding:24px 27px 40px;
	margin:0 20px;
}
.top-voice-slide-top{
	display:flex;
	align-items:center;
	gap:13px;
}
.top-voice-slide-top-icon{
	width:52px;
}
.top-voice-slide-top-name h4{
	font-size:18px;
	letter-spacing:-0.02em;
}
.top-voice-slide-top-name p{
	font-size:11px !important;
	letter-spacing:-0.02em;
	color:#757575;
}
.user-voice-icon-list{
	display:flex;
	gap:2px;
	margin:16px 0 12px 0;
}
.user-voice-icon-list div{
	width:17px;
}
.top-voice-slide li p{
	font-size:14px;
	font-weight:500;
	letter-spacing:-0.02em;
	line-height:1.65;
	text-align:justify;
}
.top-voice-slide button{
	background-color:transparent;
	border:none;
}
.top-voice-slide .slick-prev{
	width:51px;
	position:absolute;
	left:50px;
	top: 47%;
  	transform: translateY(-50%);
	z-index:10;
}
.top-voice-slide .slick-next{
	width:51px;
	position:absolute;
	right:50px;
	top: 47%;
  	transform: translateY(-50%);
	z-index:10;
}
.top-case{
	margin-top:50px;
}
.top-case-list{
	display:grid;
	grid-template-columns: repeat(2, 1fr);
	gap:20px;
	margin-top:32px;
}
.top-case-list-detail{
	background-color:#FFF5F0;
	border-radius:20px;
	padding:36px 50px 50px;
}
.top-case-list-detail h3{
	font-size:23px;
	color:#FF4800;
}
.top-case-list-detail p{
	font-size:16px;
	font-weight:500;
	letter-spacing:-0.02em;
	line-height:1.7;
	margin-top:18px;
	text-align:justify;
}
.top-flow{
	margin-top:60px;
}
.top-flow-list{
	display:grid;
	grid-template-columns: repeat(4, 1fr);
	gap:20px;
	margin-top:28px;
}
.top-flow-list-detail{
	border:1px solid #D5D5D5;
	border-radius:12px;
	padding:27px 29px 30px;
}
.top-flow-list-detail-top{
	text-align:center;
}
.top-flow-list-detail-top div{
	width:88px;
	margin:0 auto;
}
.top-flow-list-detail-top h4{
	font-size:23px;
	letter-spacing:-0.02em;
	color:#FF4800;
	margin:20px 0 0 0;
}
.top-flow-list-detail p{
	font-size:14px;
	font-weight:500;
	letter-spacing:-0.02em;
	line-height: 1.7;
	text-align:justify;
	margin:10px 0 0 0;
}
.top-faq-list{
	display:flex;
	flex-direction:column;
	gap:50px;
	margin-top:28px;
}
.top-faq-detail{
	display:flex;
	flex-direction:column;
	gap:15px;
	padding-bottom:15px;
	border-bottom:1px solid #E2E2E2;
	margin:0;
}
.top-faq-detail-top{
	display:flex;
	align-items:center;
	gap:20px;
	background-color:#FFF5F0;
	border-radius:120px;
	padding:12px;
}
.top-faq-detail-top div{
	width:43px;
}
.top-faq-detail-top h4{
	font-size:20px;
	letter-spacing:-0.02em;
	color:#FF4800;
}
.top-faq-detail-bottom{
	display:flex;
	gap:20px;
	padding:12px;
	margin:0;
}
.top-faq-detail-bottom div{
	width:43px;
}
.top-faq-detail-bottom p{
	font-size:18px;
	font-weight:500;
	letter-spacing:-0.02em;
	line-height:1.7;
	text-align:justify;
}
.top-topic-list{
	display:grid;
	grid-template-columns: repeat(4, 1fr);
	margin-top:50px;
	gap:20px;
}
.top-topic-list a img{
	height:auto;
	border-radius: 5px;
}
.top-blog{
	margin-top:60px;
	margin-bottom:60px;
}
.top-blog-list{
	margin-top:50px;
	display:flex;
	flex-direction: column;
	gap:10px;
}
.blog-content{
	display:flex;
	border-bottom: 1px solid #E2E2E2;
	padding:0 0 10px 0;
}
.blog-content p{
	color:black;
	font-weight:500;
	font-size:16px;
}
.blog-content .date{
	width:150px;
}
.top-company{
	margin-top:60px;
}
.company-content{
	margin-top:40px;
}
.company-info{
	display:flex;
	flex-direction: column;
	gap:25px;
}
.company-info__row{
	display:flex;
	padding-bottom: 15px;
    border-bottom: 1px solid #E2E2E2;
}
.company-info__row dt{
	font-style: normal;
	font-size:16px;
	font-weight:500;
	width:230px;
}
.company-info__row dd{
	font-style: normal;
	font-size:16px;
	font-weight:500;
}
.company-info__row dd a{
	color:black;
}
/* page */
.page{
	padding-top:calc(5rem + 60px);
}
.page p{
	font-size:16px;
	font-weight:500;
	line-height: 1.75;
}
/* フォーム */
.form-top{
	gap:80px;
}
.form-back{
	background-color: #FFF5F0;
	padding:40px 40px;
	border-radius: 30px;
}
.form-flex{
	display:flex;
	gap:10px;
}
.form-group{
	display:flex;
	flex-direction: column;
	gap:25px;
}
.form-group div label{
	display:flex;
	flex-direction: column;
	gap:7px;
}
.form-group div label span:nth-child(1){
	font-size:16px;
	font-weight:600;
}
.form-group div label span:nth-child(2){
	width:100%;
}
.form-group div label input{
	width:100%;
	padding:0;
	height:40px;
	border-radius: 10px;
	border: 1px solid #bdbdbd;
	padding-block: 2px;
	padding-inline: 13px;
	box-sizing: border-box;
}
.form-group div label .wpcf7-select{
	width:100%;
	padding:14px 5px;
	border-radius: 10px;
	border: 1px solid #bdbdbd;
	padding-inline: 13px;
}
.form-group div label textarea{
	width:100%;
	padding:0;
	border-radius: 10px;
	border: 1px solid #bdbdbd;
	padding-block: 5px;
	padding-inline: 13px;
	box-sizing: border-box;
	resize: vertical;
}
.form-group div label .required{
	background-color: #FF4800;
	color:white;
	padding:3px 10px;
	font-size:10px !important;
	border-radius: 30px;
	margin-left:10px;
	position: relative;
	top:-1px;
}
.form-submit{
	margin-top:20px;
}
.form-submit .wpcf7-submit{
	background-color: #FF4800;
	color:white;
	font-size:20px;
	font-weight: 600;
	padding:6px 0;
	width: 100%;
	text-align: center;
	border-radius: 10px;
	border: none;
}
.form-example{
	gap:20px;
	display:flex;
	flex-direction: column;
}
.form-top .is-style-default{
	width:35px !important;
	margin:15px 0 15px 0;
}
.form-example p{
	background-color: white;
	padding:25px 25px;
	border-radius:10px;
	box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.08);
	font-weight:500;
}
.has-luminous-vivid-amber-color{
	background-color: yellow !important;
	color: inherit !important;
}
/* お見積もりフォーム */
.simulation{
	gap:15px;
	display:grid;
	grid-template-columns: repeat(3, 1fr);
}
.simulation .wp-block-buttons>.wp-block-button{
	width:100%;
}
.simulation .wp-block-button__link{
	background-color: #FF4800;
	font-size:17px;
	font-weight:500;
	border-radius: 6px;
}
.wq-WNavigator .wq-Button{
	background-color: #FF4800 !important;
	color:white !important;
	border: none !important;
	border-radius: 4px !important;
	font-size:18px !important;
	font-weight:600 !important;
}
.wq-Form .wq-WNavigator>.wq--overlay>.wq--dialog{
	height: calc(100% - 100px) !important;
	padding-top: 90px;
}
.wq-Form .wq-Option>.wq--label>.wq--main>.wq--note{
	display:none;
}
.wq-Form .wq--prices{
	display:none;
}
/* フッター */
footer{
	background-color:#2A2A2A;
	padding:80px 0 30px 0;
	margin-top:100px;
}
.f-logo{
	width:247px;
	margin:0 auto;
	display:block;
}
.f-menu{
	display:flex;
	gap:10px;
	justify-content:center;
	margin-top:20px;
}
.f-menu a{
	color:white;
	font-weight:500;
	font-size:14px;
	text-decoration: underline;
	text-underline-offset: 4px;
    text-decoration-thickness: 1px;
}
.copy-right{
	font-size:12px;
	font-weight:600;
	margin-top:20px;
	color:white;
	text-align: center;
}
.grecaptcha-badge{
	display:none;
}
@media all and (max-width:1300px) {
.logo img{
	width:140px;
}
.menu li{
	font-size:14px;
}
.header-width{
	gap:15px;
}
.logo p{
	display:none;
}
}