@charset "utf-8";
/* CSS Document */ 

@media screen and (max-width: 1400px) {
  header .mastkv {
    padding-top: 9rem;
    padding-bottom: 6.5rem;
  }
  .top_pickup-list .useful-info-wrap {
    margin: -38px 10px 30px;
  }
  .top_pickup-list .useful-info {
    font-size: 1rem;
  }
  .top_pickup-list .acf-office {
    font-size: 0.85rem;
  }
/*  .top-about {
    padding: 2.625rem 3.5rem;
  }*/
	
	.top-about .top-about-wrapper{
		margin: 2.625rem 3.5rem;
	}
	
	
  .mastkv button, .mastkv input, .mastkv select, .mastkv textarea {
    padding: 16px 4px 18px 16px;
    font-size: 1.05rem;
  }
  .shiconare li:last-child input[type=submit] {
    font-size: 1.05rem;
  }
  .top-consultation .main_title h2:before {
    width: 100px;
    height: 100px;
    margin-top: -3rem;
  }
  .top-consultation .most_viewed ul {
    max-width: 55%;
  }
  .top-consultation .most_viewed ul li p {
    margin: 5px;
    padding: 6px;
    font-size: 1.2rem;
  }
  .top-consultation .consultaion_category_list ul {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  }
  .top-consultation .consultaion_category_list ul li p {
    margin: 0 5px 5px;
    padding: 5px 2px;
    font-size: 1rem;
  }
	
.menu-wrapper .pc-nav ul li {
    padding: 9px 10px;
	}
	
	.kkmg header .site-description {
    font-size: 14px;
	}
}

@media screen and (max-width: 1260px) {
.kkmg header .left_header {
flex-direction: column;
	align-items: flex-start;
}

.kkmg header .left_header {
    gap: 5px;
}
}

@media screen and (min-width: 768px) {
  .top_pickup {
    /*  margin: 0 4.375rem;*/
    padding-top: 6rem;
    padding-bottom: 5.5rem;
  }
  .pro_list {
    padding-top: 6rem;
    padding-bottom: 5.5rem;
  }
  .pro_list .content-wrapper {
    margin: 5rem auto 0;
    max-width: 100rem;
    padding: 0 5rem 0;
  }
  .content-wrapper {
    margin: 5rem 4.375rem 0;
  }
  .subpage-wrapper {
    margin: 5rem auto 0;
    max-width: 100rem;
    padding: 0 5rem;
  }
  .top_pickup .top_pickup-list, .latest_pro .top_pickup-list {
    grid-row-gap: 5vw;
    grid-column-gap: 2.1875vw;
    -ms-grid-columns: 1fr 2.1875vw 1fr 2.1875vw 1fr 2.1875vw 1fr;
    display: -ms-grid;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    justify-content: center;
    justify-items: center;
    padding-left: 0;
  }
  .cat_page .top_pickup-list {
    grid-row-gap: 3vw;
  }
  .cat_page {
    padding-top: 2rem;
  }
  .pro_list .top_pickup-list {
    /*      grid-row-gap: 5vw;*/
    grid-column-gap: 2.1875vw;
    -ms-grid-columns: 1fr 2.1875vw 1fr 2.1875vw 1fr 2.1875vw 1fr;
    display: -ms-grid;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    justify-content: center;
    justify-items: center;
    padding-left: 0;
    margin-bottom: 2.1875vw;
  }
  .top_pickup .top_pickup-list .top_pickup-item, .latest_pro .top_pickup-list .top_pickup-item, .pro_list .top_pickup-list .top_pickup-item {
    width: 100%;
  }
  .latest_pro-wrap {
    /* margin: 0 4.375rem;*/
    padding-top: 6rem;
    padding-bottom: 10rem;
  }
  .top-about {
    /*border-radius: 2.5rem;*/
    display: flex;
    justify-content: center;
    /*margin-top: -2.5rem;*/
    /*padding: 3.625rem 7.6875rem 3rem;*/
	  width: 100%;
  }
  .top-about .top-about-wrapper {
    max-width: 81.25rem;
    width: 100%;
	gap: 2rem;
	  margin: 3.625rem 7.6875rem 3rem;
  }
  .top-about .top-about-wrapper .top-about-description {
    width: 55%;
  }
  .search_cat {
    /* margin: 0 4.375rem;*/
    padding-top: 6rem;
    padding-bottom: 7.25rem;
  }
  .search_cat .content-wrapper {
    max-width: 80rem;
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 980px) {
  .pro_list .top_pickup-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-row-gap: 2.1875vw;
  }
  .menu-wrapper {
    padding: 15px 10px;
  }
  .kkmg header h1 img {
    width: 170px;
  }
  .menu-wrapper .pc-nav ul li {
    padding: 9px 10px;
    list-style: none;
  }
  .menu-wrapper .pc-nav ul li:last-child {
    padding-right: 0;
  }
  .menu-wrapper .pc-nav ul li a {
    font-size: .875rem;
  }
  .menu-wrapper .pc-nav ul li .global-nav__search-button {
    padding: 7px 11px 10px;
  }
}


@media screen and (max-width: 768px) {
  .content-wrapper, .subpage-wrapper {
    margin: 2rem .71875rem 2.25rem;
  }
	
	
  .profile_introduction {
    flex-direction: column;
  }
  .profile_introduction .profile_image {
    max-width: 100%;
    display: flex;
    justify-content: center;
  }
  .profile_introduction .profile_intro_right {
    width: 100%;
    flex-direction: column;
  }
  .profile_introduction .profile_intro_text {
    width: 100%;
  }
  .profile_introduction .id-shigyoumei {
    max-width: fit-content;
  }
  .id-shigyou-bengo p, .id-shigyou-tyusyo p, .id-shigyou-zeiri p, .id-shigyou-syarou p, .id-shigyou-gyousei p, .id-shigyou-shihou p, .id-shigyou-kaikei p, .id-shigyou-benri p, .id-shigyou-fudo p {
    padding: 7px 10px !important;
  }
  .profile_introduction .expert_area ul {
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: auto;
  }
  .profile_introduction .contact-inner-top {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center;
    gap: 2%;
  }
  .profile_introduction .pro_contact_mailbox {
    width: 48%;
  }
  .pro_contact_tel {
    width: 48%;
    margin: 0;
  }
  .profile_details_tab {
    background: #fff;
    border-radius: 1rem;
    padding: .5rem;
  }
  .profile_details_tab .tab-button li {
    margin: 2px;
  }
  .profile_details_tab .tab-button li span {
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
  }
  .profile_details_tab .tab-button li span::before {
    position: relative;
    left: auto;
  }
  .profile_career_details dl {
    flex-direction: column;
  }
  .profile_career_details dt, .profile_career_details dd {
    width: 100%;
  }
  .profile_career_details dt {
    padding: 0 0 8px 0;
  }
  .profile_career_details dd {
    padding: 8px 0;
    border-left: none;
    border-top: 2px solid #61c6d2;
  }
  .profile_career_details dl {
    padding: .5rem;
  }
  .single_profile .id-contact-container .contact_bttns .pro_contact_mail {
    padding: 12px 22px 12px 12px;
  }
  .single_profile .id-contact-container .contact_bttns .pro_contact_mail .ico_mail_btn {
    width: 40px;
    height: 40px;
  }
  .single_profile .id-contact-container .pro_contact_mail .btn_text, .single_profile .id-contact-container .pro_contact_mail .text_main {
    font-size: 18px;
  }
  .single_profile .id-contact-container .id-contact-inner2 dl {
    flex-direction: column;
  }
  .single_profile .id-contact-container .id-contact-inner2 dt {
    width: 100%;
    border-bottom: none;
    font-weight: 600;
    padding-left: 0;
  }
  .single_profile .id-contact-container .id-contact-inner2 dd {
    width: 100%;
  }
  .pro_list .intro-tag {
    margin-top: 0 !important;
  }
  .pro_list .top_pickup-list {
    gap: 5vw;
    display: grid;
    grid-template-columns: 1fr;
  }
  .pro_list {
    padding-top: 3rem;
    padding-bottom: 2.5rem;
  }
  .mastkv .container h2 {
    font-size: 1.75rem;
    margin-top: 1.7rem;
	display: inline-block;
	  background: rgba(23,38,58,.7);
    padding: 4px 10px 7px;
    border-radius: 8px;  
  }
  .mastkv .container .desc {
    font-size: 1rem;
  }
	
.shiconare ul, .top_search-bar{
	gap:4vw!important;
}	
  	
  .shiconare li, .top_search-bar li{
    width: 47% !important;
    margin-bottom: 0 !important;
  }
	
	
	
  .shiconare li:last-child, .top_search-bar li:last-child {
    width: 99% !important;
  }
  header .mastkv {
    padding-top: 3rem;
    padding-bottom: 2.5rem;
  }
  .top_pickup, .latest_pro, .top_articles, .top_testimonials {
    padding-top: 4rem;
    padding-bottom: 2.25rem;
  }
	.search_cat{
	padding-top: 4rem;
    padding-bottom: 4.25rem;
	}
	
	    .top-consultation .main_title h2:before {
        width: 70px;
        height: 70px;
        margin-top: -2rem;
    }
	
	
  .top_pickup .top_pickup-list, .latest_pro .top_pickup-list {
    grid-row-gap: 5vw;
  }
  .top_pickup .top_pickup-list .top_pickup-item, .latest_pro .top_pickup-list .top_pickup-item {
    margin-bottom: 3.5rem;
  }
  .top_pickup .top_pickup-list .top_pickup-item .pro_tag, .latest_pro .top_pickup-list .top_pickup-item .pro_tag {
    margin-top: 6px;
  }
  .top_pickup .top_pickup-list .top_pickup-item a, .latest_pro .top_pickup-list .top_pickup-item a {
    display: flex;
    flex-direction: column-reverse;
  }
  .top_pickup-list .useful-info-wrap {
    display: none;
  }
/*  .top-about {
    padding: 2rem 1.25rem;
  }*/
  .top-about .top-about-wrapper {
    flex-direction: column;
	     margin:0;
	  padding: 2rem 1.25rem;
  }
  .top-about .top-about-wrapper .top-about-title {
    text-align: left;
    margin-bottom: .85rem;
    font-size: 1.5rem;
    font-weight: 600;
    margin-right: 0;
    width: 100%;
  }
  .top-about .top-about-wrapper .top-about-description p.top-about-text {
    font-size: 1rem;
    line-height: 1.5;
  }
  .main_title h2 {
    font-size: 1.85em;
  }
  .main_title p {
    font-size: 1.15rem;
  }
  .search_cat .kensaku-left {
    width: 95%;
  }
  .search_cat .kensaku-right {
    width: 95%;
  }
  .kensaku-left {
    display: flex;
    flex-direction: column-reverse;
  }
  .pro-badgers {
	grid-column-gap: 3.5vw;
    grid-row-gap: 5vw;
  }
  .pro-badgers li a .tag {
    padding: 2px;
    font-weight: 600;
	  font-size: 15px;
  }
  .pro-badgers .img-text {
    padding: 5px;
  }
  .pro-badgers .img-text p {
    font-size: 14px;
  }
  .top-consultation .main_title {
    margin-bottom: 2.5rem;
  }
  .top-consultation {
    padding-bottom: 2.25rem;
  }
  .top-consultation .most_viewed ul {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    display: grid;
    max-width: 100%;
  }
  .top_articles .top_articles-list {
    display: flex;
    flex-direction: column;
    grid-row-gap: 6.10vw;
    margin-bottom: 2rem;
  }
  .join_kaiketsu {
    background: #17263a;
    padding-top: 3.25rem;
    padding-bottom: 3rem;
  }
  .join_kaiketsu-wrapper {
    margin: 0 1.375rem 0;
  }
  .join_kaiketsu .join_intro p {
    font-size: 1.15rem;
  }
  .join_kaiketsu .cover-image, #publish .cover-image{
    padding-top: 10px;
  }
  .join_kaiketsu .cover-image img, #publish .cover-image img{
    width: 75%;
  }
  .join_kaiketsu .topbenifits {
    gap: 1rem;
    margin-bottom: 2rem;
    flex-direction: column;
  }
  .top_testimonials .testimonials_list {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
	  grid-row-gap: 5vw;
  }
  .top_testimonials .testimonials_list_item {
    flex-direction: column;
  }
  .blog_page .top_articles-list, .kaiketsu-news .top_articles-list {
    grid-template-columns: 1fr;
	grid-row-gap: 6vw;  
	margin-bottom: 1rem;
  }
  .contact-container {
    width: 100%;
  }
  .contact-container dl {
    width: 100%;
  }
  .wpcf7-form-control-wrap[data-name="your-message"] textarea {
    margin-left: auto;
    margin-right: auto;
  }
  .contact-half dd {
    margin: 0;
  }
  .contact-container dd {
    margin: 0;
  }
	.kkmg .contact-container {
	    margin-top: 60px;
		width: 100%;
	}
	
	#publish-form .form-container, 	#publish-form .form-container dl{
		width:100%;
	}
	
	.publish-form, #publish-form.confirm-form .form-container dl {
		width: 100%;
		flex-direction: column;
	}
	
	#publish-form .form-container dl{
		margin: 0 auto 1rem;
	}
	
	.confirm-form .form-container dd, .confirm-form .form-container dt{
		    width: 100%;
    min-width: 100%;
	}
	
	.confirm-form .form-container .address-area {
    width: 100%;
	}
	.blog_page, .kaiketsu-news {
    padding: 1rem 0 5rem 0;
}
	
	.pro_higlighits li img {
    width: 50px;
}
	
	
	
.pro_higlighits li .img_cntn {
    width: 100px;
    height: 100px;
	}
	
	
	p.publish-pbig{
		margin-top:30px;
		padding-top: 30px;
		font-size: 1.2rem;
	}
	

	.publish-main img {
		margin-bottom: 50px;
	}
	.campaign-text {
		margin-bottom: 40px;
		width: 100%;
	}
	
	#publish .cover-image {
		margin-bottom: 40px;
	}
	
	#publish p{
		padding-bottom:1rem;
	}
	
	#publish .renwl_campaign p{
		padding-bottom: 0;
	}
	

	.campaign-text p {
		font-size: 22px;
	}
	.campaign-text p::before {
	font-size: 25px;
	position: absolute;
	top: 10px;
	left: -50px;
}
.campaign-text p::after {
	font-size: 25px;
	position: absolute;
	top: 10px;
	right: -50px;
}
	#publish h2 {
		font-size: 20px;
		width: 80%;
		margin-left: auto;
		margin-right: auto;
	}
	#publish h2::before {
	top: -75px;
	left: 0;
	right: 0;
}
#publish h2::after{
	display: none;
}
	
	.publish-container{
		padding-bottom: 5%;
		height: auto;
	}
	
	
	
	.publish-inner {
		border-radius: 1rem;
		height: auto;
			    width: 90%;
	}
	.publish-container h3{
        font-size: 25px;
        padding-bottom: 0px;
        margin-top: 30px !important;
        text-align: center;
        padding-top: 20px;
        color: #fff;
}

	
	
.publish-price {
    margin-top: 40px;
	}
	
	
	
	.publish-dl {
	padding-top: 30px;
}
.publish-dl dt {
	font-size: 18px;
}
	
	.publish-dl p{
		margin-bottom: 0;
	}
	
	.arrwdwn {
    margin-top: 0;
		width: 32px;
}
	
	
.publish-dl dd {
	font-size: 15px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 10px;
	padding-bottom: 30px;
}
	.publish-bottom {
		flex-direction: column;
		    margin-top: 30px;
	}
	.publish-bottom p {
		width: 90%;
	}
	.publish-price::before {

	width: 50px;
		height: 50px;
}
	
	
	.qa-actab-content p::before{
		display: block;
	}
	
	.qa-base .qa-actab {
		width: 100%;
	}
	
	
	.qa-base {
    	width: 100%;
	}
	
	.qa-base .qa-actab label {
    padding: 12px 1em 12px 1rem;
	}
	
	
	 .qa-actab-content p {
        text-align: left;
    }
	
	
	.pro-cat_list .pro-cat_list_item a{
		display: block;
		padding: 5px 10px 5px 10px;
		font-size: 14px;
		width: 100%;
	}
	
	.pro-cat_list .pro-cat_list_item a img {
		display: none;
	}
	
	#shigyou-about{
		padding-top:40px;
	}
	
	#shigyou-about h2 {
    padding-bottom: 0;
    margin-bottom: 0;
}
	

	
	.badge p {
    padding-top: 10px;
}
	
	
.badge {
    width:100%;
	}
	
	
	.top-consultation .consultaion_category_list ul li {
		min-width: 30%;
	}
	
	.top-consultation .consultaion_category_list ul{
		gap: 1.5vw;
	}

	
	.top-consultation .most_viewed ul {
		    margin: 0 auto 1.5vw;
		    grid-row-gap: 1.5vw;
    grid-column-gap: 1.5vw;
	}

.todofuken ul {
    gap: 5px 20px;
}
	
	.area-shigyou-list li{
		flex-direction: column;
	}
	
    .area-shigyou-list li span {
        min-width: 100%;
        margin: 16px 0 5px;
    }
	
	.area-shigyou-list li ul.consultation-list {
    width: 100%;
		padding-left: 0;
	}
	
	.kkmg header .left_header {
        gap: 20px;
        flex-direction: row;
    }
	
	.professionals_entry .menu-wrapper nav ul {
    padding: 0 0 0 10px;
}
	
	.professionals_entry .menu-wrapper nav ul li:last-child{
		display: none;
	}
	
	.professionals_entry .menu-wrapper nav ul a span{
    font-size: 14px;
		
	}
	.professionals_entry .menu-wrapper nav ul a{
        padding: 8px 12px 11px;
        min-width: 114px;
        display: block;
        text-align: center;
	}
	
	
	
	
	.professionals_entry div.highway-slider {

    margin-top: 0;
}
	
	#infinite div.highway-barrier ul.highway-lane li.highway-car:nth-child(even) {
    margin-top: 80px;
}
	
			.kkmg header .site-description{
		visibility: hidden;
		position: absolute;
	}
	
	
	
	.about_intro_flex, .pro_higlighits, .pro_flow_contain{
		 flex-direction: column;
	}
	
	
	.pro_higlighits{
			        gap: 30px;
    }
	
	#infinite div.highway-barrier ul.highway-lane li.highway-car {
    flex: 0 0 25.5%;
    padding: 0 10px;
	}
	
	.professionals_entry .section_intro {
    margin: 60px 0;
}
	
	
	.professionals_entry .section_intro .intro_title {
    font-size: 24px;
	}
	
	.professionals_entry .section_intro p {
    font-size: 18px;
}
.professionals_entry section {
    padding:60px 0!important;
}
	
	.about_intro_text{
		width: 100%;
	}
	
	
	.about_intro_img{
		width:90%;
		margin-top: 30px;
	}
	.about_intro_img:after {

    left: 20px;
		top: 20px;}
	
	
	.pro_higlighits li p {
    font-size: 15px;
	}
	
	.pro_higlighits li p span {
    font-size: 22px;
}
	
	.pro_flow h2, .pro_faq h2  {
    font-size: 28px;
		        margin: 0 0 25px;
	}
	
	.pro_faq .faq_cntnr {

    border-radius: 55px;
	}
	
	.pro_footer .footer_block .btn_area {
		flex-direction: column-reverse;
		
	}
	
	.pro_flow_contain{
		gap:30px;
		grid-template-columns: 1fr;
	}
	
	.pro_footer .footer_block{
		    margin:0 20px;
	}
	
	
	.pro_footer .pro_btn {    min-width: 202px;
		text-align: center;
	margin-top: 0;
	}
	
	.professionals_entry section.slide-option {
    margin: 0 0 0 0;
    padding-bottom: 10px !important;
}
	.footer_text{
		padding:15px;
	}
	
	
}








@media screen and (max-width: 520px) {
  .profile_introduction .contact-inner-top {
    flex-direction: column;
  }
  .profile_introduction .pro_contact_mailbox {
    width: 100%;
    margin-bottom: 10px;
  }
  .pro_contact_tel {
    width: 100%;
    margin: 0;
  }
  .single_profile .id-contact-container .contact_bttns {
    gap: 10px;
    align-items: center;
	flex-direction: column;
  }
  .top-consultation .most_viewed ul {
    grid-template-rows: repeat(3, 1fr);
    display: grid;
    max-width: 40%;
  }
  .mastkv .container h2 {
    font-size: 1.5rem;
  }

	header .mastkv::after {
		background-size: 140%;
	}
	
	.top-consultation .consultaion_category_list ul li {
		min-width: 40%;
	}
	
		.badge img {
    width: 50%;
	}
	

}


@media screen and (max-width: 400px) {
.pro-badgers{
		grid-template-columns: 1fr 1fr;
	}
}