/*
 Theme Name:   SWELL Child
 Description:  SWELL Child Theme
 Author:       Seidoh
 Template:     swell
 Version:      1.0.0
  Text Domain:  swell-child
*/

body {
	background-color: #FDF7F2;
}

h2 {
  font-family: "Noto Sans JP", sans-serif;
}



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

#header {
	background: none;
}

.c-gnavWrap {
	margin-top: 20px;
	margin: 20px 0;
}
.c-gnav {
	height: 56px;
}
.c-gnav .menu-item {
	color: #343434;
}
.c-gnav li.menu-item > a {
	padding-left: 15px;
	padding-right: 15px;
}
.c-gnav li.menu-item a span {
	font-size: 14px !important;
}

.c-gnav li a::after {
  background: #EB731D !important;
}
.c-gnav li.menu-item a::after {
	width: 85%;
	margin: 0 7.5%;
	bottom: 10px;
}
.c-gnav li.menu-item:hover a::after {
	height: 2px;
}
.c-gnav li.current-menu-item a::after {
	height: 2px;
}
.c-gnav li:last-of-type a::after,
.c-gnav li.current-menu-item:last-of-type a::after {
  background: none !important;
}

.c-gnav li:last-of-type {
background: linear-gradient(135deg, #EB731D 0%, #FDBC3F 100%);
	color: #fff;
	padding: 0 12px;
	border-radius: 8px;
	margin-left: 20px;
}
.c-gnav li:last-of-type a:hover {
	opacity: 0.7;
}
.c-gnav li:last-of-type a span {
	font-size: 16px !important;
	font-weight: bold;
	position: relative;
	display: inline-block;
	padding: 0 32px 0 0;
	vertical-align: middle;
	text-decoration: none;
}
.c-gnav li:last-of-type a::before {
	content: "";
  position: absolute;
	right: 8.5px;
	top: 19px;
  display: inline-block;
  width: 20px;
  height:20px;
	border-radius: 10px;
	background: #fff;
	z-index: 0;
}
.c-gnav li:last-of-type a span::before,
.c-gnav li:last-of-type a span::after {
  content: "";
  position: absolute;
  top: calc(50% - -0.5px);
  right: 0;
  width: 7px;
  height: 1px;
  border-radius: 9999px;
  background-color: #eb731d;
  transform-origin: calc(100% - 0.5px) 50%;
	z-index: 1000;
}
.c-gnav li:last-of-type a span::before {
  transform: rotate(37.5deg);
}
.c-gnav li:last-of-type span::after {
  transform: rotate(-37.5deg);
}


/**** 共通 ****/


.page h3 {
	border: none;
}


#main_visual {
	background: url(https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/mv_bg@2x.jpg) top left no-repeat;
	background-size: 73.865vw;
}
.p-mainVisual__imgLayer {
	width: 72vw;
	margin-left: 28vw;
}
.p-mainVisual__imgLayer img {
		border-radius: 0 0 8px 108px;
}

.p-mainVisual__textLayer {
	max-width: 100% !important;
	padding-left: 6.22vw;
}
.p-mainVisual__textLayer .p-blogParts {
	width: 35.139vw;
	padding-top: 1vw;
}
.p-mainVisual__textLayer .p-blogParts > p:first-of-type,
.reserve .p-blogParts > p:first-of-type {
	background: linear-gradient(135deg, #DEBB5D 0%, #F2E184 45%, #D5AC4D 100%);
	width: 27.5%;
	margin: 0 36.25%;
	display: inline-block;
text-align: center;
	font-size: 1vw;
	position: relative;
	top: 1.6vw;
	z-index: 100;
	border-radius: 0.3vw;
	font-weight: bold;
	padding: 0.3vw;
box-shadow: 0 0 4px rgba(100,52,19,0.3);
}
.p-mainVisual__textLayer .p-blogParts > p:first-of-type::after,
.reserve .p-blogParts > p:first-of-type::after {
	content:' ';
	background: linear-gradient(135deg, #DEBB5D 0%, #F2E184 45%, #D5AC4D 100%);
  width: 0.6vw;
  height: 0.5vw;
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
position: absolute;
	z-index: 1100;
	left: 50%;
	margin-left: -0.5em;
top: 2.6vw;
}
.p-mainVisual__textLayer .p-blogParts .swell-block-button a,
.reserve .p-blogParts .swell-block-button a {
	font-size: 1.66vw;
	letter-spacing: 0;
	line-height: 1;
	padding: 2.2vw 0;
	position: relative;
}
.p-mainVisual__textLayer .p-blogParts .swell-block-button a span,
.reserve .p-blogParts .swell-block-button a span {
	vertical-align: middle;
	text-shadow: none;
	position:relative;
}
.p-mainVisual__textLayer .p-blogParts .swell-block-button a > span,
.reserve .p-blogParts .swell-block-button a > span {
	padding-right: 2.343vw;
	top: 3px;
}
.p-mainVisual__textLayer .p-blogParts .swell-block-button a span span,
.reserve .p-blogParts .swell-block-button a span span {
	font-size: 2.3vw;
	line-height: 1 !important;
	height: 2.3vw;
	padding: 0 0.439vw 0.08vw;
	background: #fff;
	color: #EB731D;
	border-radius: 3px;
	margin-right: 3px;	
	position:relative;
	top:-3px ;
}
.p-mainVisual__textLayer .p-blogParts .swell-block-button a span span:last-of-type,
.reserve .p-blogParts .swell-block-button a span span:last-of-type {
margin-right: 0.586vw;
}
.p-mainVisual__textLayer .p-blogParts .swell-block-button a::before,
.reserve .p-blogParts .swell-block-button a::before {
	content: "";
  position: absolute;
	right: 2.8vw;
	top: 2.4vw;
  display: inline-block;
  width: 1.903vw;
  height: 1.903vw;
	border-radius: 50%;
	background: #fff;
	z-index: 0;
}
.p-mainVisual__textLayer .p-blogParts .swell-block-button a > span::before,
.p-mainVisual__textLayer .p-blogParts .swell-block-button a > span::after,
.reserve .p-blogParts .swell-block-button a > span::before,
.reserve .p-blogParts .swell-block-button a > span::after {
  content: "";
  position: absolute;
  top: calc(50% - -0.04vw);
  right: 0.62vw;
  width: 0.62vw;
  height: 0.08vw;
  border-radius: 9999px;
  background-color: #eb731d;
  transform-origin: calc(100% - 0.04vw) 50%;
	z-index: 1000;
}
.p-mainVisual__textLayer .p-blogParts .swell-block-button a > span::before,
.reserve .p-blogParts .swell-block-button a > span::before {
  transform: rotate(37.5deg);
}
.p-mainVisual__textLayer .p-blogParts .swell-block-button a > span::after,
.reserve .p-blogParts .swell-block-button a > span::after {
  transform: rotate(-37.5deg);
}

.p-mainVisual__slideTitle {
  font-family: "Shippori Mincho", serif;
  font-weight: 600;
  font-style: normal;
	font-size: 4.905vw;
	line-height: 7.540vw;
	letter-spacing:-0.033em;
background: linear-gradient(90deg, #EB731D 0%, #FFD380 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
	padding-top: 13.4vw;
	text-shadow: 0 0 15px rgba(255,219,177,.8);
}
.p-mainVisual__slideTitle span {
  font-family: "Playfair Display", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
	display: block;
	font-size: 1.4vw;
	line-height: 1.9;
	letter-spacing:0.01em;
	color: #F49D5F !important;
	padding-left: 0.4vw;
}
.p-mainVisual__slideText {
	margin-top: 1.9vw;
	font-size: 1rem;
	padding-left: 0.4vw;
line-height: 2.125;
}
.authority {
	position: absolute;
	bottom:1.46vw;
	right: 2.93vw;
	text-align: right;
}
.authority img {
	width: 11.713vw;
	height: auto;
	margin: 0 .36vw;
}



/* トップページ */

.home #content {
	padding-top: 34px;
}
.home #content .post_content {
	padding: 0;
}
.page h2 {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: bold;
font-size: 64px;
line-height: 1.2;
color: #EB731D;
padding-bottom: 70px;
background: none;
margin: 0;
padding: 0;
padding-bottom: 50px;
}
.page h2 span {
font-size: 16px;
color: #707070;
display: block;
font-weight: normal;
}
.page h3 {
font-size: 30px;
line-height: 1.733;
color: #343434;
font-weight: 600;
margin: 0;
padding: 0;
padding-bottom: 36px;
}
.page h2::before, 
.page h3::before {
	border: none;
	background: none;
}
.page p {
color: #343434;
}

.home .message {
	background: #fff;
	border-radius: 16px;
	background: url(http://www.konkatsukukuri.com/wp-content/uploads/2026/07/message_bg.png) top right no-repeat #fff;
	background-size: auto 100%;
	padding: 100px 120px 160px;
	position: relative;
}
.home .message p {
	width: 445px;
}

.home .message .image img {
	position: absolute;
	height: auto;
}
.home .message .image img:first-of-type {
	width: 331px;
	top: 100px;
	right: 344px;
}
.home .message .image img:nth-of-type(2) {
	width: 318px;
	top: 174px;
	right:50px;
}
.home .message .image img:last-of-type {
	width: 315px;
	bottom: 120px;
	right: 230px;
}


.link_btn {
background: linear-gradient(135deg, #EB731D 0%, #FDBC3F 100%);
	color: #fff;
	padding: 17px 32px;
	border-radius: 8px;
	width: 241px;
	margin-top: 70px;
	line-height: 1;
	position: relative;
}
.link_btn a {
	padding: 0;
}
.link_btn a:hover {
	opacity: 0.7;
}
.link_btn a span {
	font-size: 16px !important;
	position: relative;
	display: inline-block;
	padding: 0 37px 0 0;
	color: #fff;
	vertical-align: middle;
	text-decoration: none;
	font-size: 17px !important;
	font-weight: 500;
	top: 3px;
}

.link_btn a span img {
	width: 17px;
	vertical-align: middle;
	margin-right: 14px;
	position: relative;
	top: -2px;
}
.link_btn a::before {
	content: "";
  position: absolute;
	right: 30px;
	top: 20px;
  display: inline-block;
  width: 20px;
  height:20px;
	border-radius: 10px;
	background: #fff;
	z-index: 100;
}
.link_btn a span::before,
.link_btn a span::after {
  content: "";
  position: absolute;
  top: calc(50% - 2px);
  right: 0;
  width: 7px;
  height: 1px;
  border-radius: 9999px;
  background-color: #eb731d;
  transform-origin: calc(100% - 0.5px) 50%;
	z-index: 200;
}
.link_btn a span::before {
  transform: rotate(37.5deg);
}
.link_btn a span::after {
  transform: rotate(-37.5deg);
}


.home .value {
background:url(http://www.konkatsukukuri.com/wp-content/uploads/2026/07/value_bg-scaled.png) top center no-repeat #fff;
	background-size: 100% auto;
	width: 100vw;
	position: relative;
	left: calc(50% - 50vw);
	margin-top: 70px;
}
.home .value h2 {
	font-size: 3.125em;
	text-align: center;
	padding-top: 90px;
}
.home .value .wrap,
.navi_list {
	max-width: 1136px;
	margin: 0 auto;
	font-size: 0;
	text-align: center;
}
.home .value .wrap {
	padding: 10px 0 30px;
}
#visitor .merits section,
.home .value section,
.navi_list li {
	display: inline-block;
	background: #fff;
	border-radius: 8px;
	font-size: 16px;
	letter-spacing: 0;
	position: relative;
	box-shadow: 0 1px 20px rgba(100,52,19,0.3);
}
#visitor .merits section,
.home .value section {
	width: 354px;
	height: 477px;
	padding: 24px;
	margin: 24px 12px !important;
	vertical-align: top;
	text-align: center;
}



#visitor .merits .shoulder,
.home .value .shoulder {
	width: 80px;
	height: auto;
	position: absolute;
	top: -20px;
	left: 8px;
}
#visitor .merits h3,
.home .value h3 {
	font-size: 1.25em;
	line-height: 1.45;
	font-weight: 900;
	color: #EB731D;
	padding: 18px 0;
}
#visitor .merits .wrap p,
.home .value .wrap p {
	font-size: 13px;
	line-height: 1.77;
	text-align: left;
}

.home .blog_slider {
	padding-top:100px;
}



/* トップページ */
.value .reserve .p-blogParts {
	width: 480px;
	margin: 0 auto;
}


/**** フッター上 ****/

.navi_list {
	position: relative;
	padding-top: 45px;

}
.navi_list::before {
	content: "";
background:  linear-gradient(135deg, #EB731D 0%, #FDBC3F 100%);
	width: 100vw;
	height: 243px;
	left: calc(50% - 50vw);
	margin-top: 70px;
	position: absolute;
	top: -102px;
}


.navi_list li:nth-of-type(1) {
	background: url(http://www.konkatsukukuri.com/wp-content/uploads/2026/07/price.jpg) no-repeat top left #fff;
background-size: 175px auto;
}
.navi_list li:nth-of-type(2) {
	background: url(http://www.konkatsukukuri.com/wp-content/uploads/2026/07/qa.jpg) no-repeat top left #fff;
background-size: 175px auto;
}
.navi_list li:nth-of-type(3) {
	background: url(http://www.konkatsukukuri.com/wp-content/uploads/2026/07/flow.jpg) no-repeat top left #fff;
background-size: 175px auto;
}

.navi_list li {
font-family: "Zen Kaku Gothic Antique", sans-serif;	width: 23%;
	height: 186px;
	margin: 0 .8%;
		padding: 0 0 32px;
	vertical-align: middle;
	text-align: left;
	background-size: auto 100%;
	background-position: right 107% top;
}

.navi_list li a {
	width:100%;
	height: 100%;
	padding-left: 50%;
	font-size: 16px;
	font-weight: bold;
	color:#EB731D;
	display:flex;
	justify-content: center;
	align-items: center;
}
.navi_list li::before {
	content: "";
  position: absolute;
	right: calc(25% - 13px);
	bottom: 28%;
  display: inline-block;
  width: 26px;
  height: 26px;
	border-radius: 50%;
	background: #eb731d;
	z-index: 0;
}
.navi_list li a::before,
.navi_list li a::after {
  content: "";
  position: absolute;
  bottom: calc(28% + 12px);
  right: calc(25% - 4.5px);
  width: 9px;
  height: 2px;
  border-radius: 9999px;
  background-color: #fff;
  transform-origin: calc(100% - 0.04vw) 50%;
	z-index: 1000;
}
.navi_list li a::before {
  transform: rotate(37.5deg);
}
.navi_list li a::after {
  transform: rotate(-37.5deg);
}


.f_contact {
	width: 100%;
	height: 468px;
	padding-right: 46.850%;
	background: #fff;
	border-radius: 16px;
background: url(http://www.konkatsukukuri.com/wp-content/uploads/2026/07/img_contact.jpg) no-repeat top right #fff;
background-size: auto 100%;
	text-align: center;
	z-index: 1;
	position: relative;
	margin-bottom: 120px;
}
.f_contact::before {
	content: " ";
	width: 100%;
	height: 100%;
	background: url(http://www.konkatsukukuri.com/wp-content/uploads/2026/07/contact_over.png) no-repeat bottom right;
z-index: 10;
	position: absolute;
	left: 0;
	background-size: 306px;
}
.f_contact h2 {
	padding-top: 80px;
}
.f_contact p {
	font-weight: 500;
	padding-bottom: 22px;
}
.f_contact .tel_info {
	width:438px;
	height: 98px;
	display: inline-block;
	position: relative;
	z-index: 100;
}
.f_contact .tel_info a {
	background: url(http://www.konkatsukukuri.com/wp-content/uploads/2026/07/tel_mark@4x.png) no-repeat center left 68px #EBC264;
	background-size: 50px;
	width: 100%;
	height: 100%;
	display: inline-block;
	border-radius: 49px;
	color: #343434;
	font-size: 36px;
	font-weight: 800;
	line-height: 1.2;
	text-align: left;
	padding-left:124px;
	padding-top:17px;
}
.f_contact .tel_info a span {
	font-size: 13px;
	font-weight: normal;
	display: block;
}

.footer_link {
	border-top: 1px solid #EB731D;
	border-bottom: 1px solid #EB731D;
}
.footer_link > div {
 	display: inline-block;
	width: 50%;
	position: relative;
}
.footer_link > div:last-of-type {
	width: 49%;
}
.footer_link > div a {
	padding: 60px 70px;	
	display: block;
}
.footer_link > div h2 {
	padding-bottom: 18px;
}
.footer_link > div p {
	font-size: 20px;
	font-weight: 300 ;
}
.footer_link > div h2 span {
	color: #EB731D;
	font-weight: 400;
}
.footer_link .line {
		border-right: 1px solid #EB731D;
}
.footer_link > div a::before {
	content: "";
  position: absolute;
	right: 70px;
  top: calc(50% - 40px);
  display: inline-block;
  width: 80px;
  height: 80px;
	border-radius: 50%;
	z-index: 0;
	border: 1px solid #EB731D;
}
.footer_link > div a h2::before,
.footer_link > div a h2::after {
  content: "";
  position: absolute;
  top: calc(50% - -0.5px);
  right:102px;
  width: 16px;
  height: 1px;
  border-radius: 9999px;
  background-color: #eb731d;
  transform-origin: calc(100% - 0.5px) 50%;
	z-index: 1000;
}
.footer_link > div a h2::before {
  transform: rotate(37.5deg);
}
.footer_link > div a h2::after {
  transform: rotate(-37.5deg);
}

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


footer .l-footer__widgetArea {
	padding-bottom: 0;
}
.w-footer__box {
	height: auto;
	max-width: 50%;
}
.w-footer__box:first-of-type {
background: linear-gradient(135deg, #EB731D 0%, #FDBC3F 100%);
border-radius: 8px 0px 0px 8px;
padding: 70px 60px 10px 70px;
}
.w-footer__box:last-of-type {
	background: #ccc;
	border-radius: 0px 8px 8px 0px;
	padding: 0;
	overflow: hidden;
}
footer .info .footer_logo  {
	width: 170px;
	padding-bottom: 10px;
}
footer .info p {
		color: #fff;
	letter-spacing: 0;
	font-weight: normal;	
}
footer #nav_menu-2 {
	text-align: center;
	margin-top: 20px;
}
footer #nav_menu-2 li {
	display: inline-block;
	color: #fff;
	font-size: 12px;
}
footer #nav_menu-2 li a {
	padding: 2px 2px !important;
	margin: 0 6px;
	border-bottom: 1px solid#fff;
}
footer #nav_menu-2 li a::before {
	display: none;
}
footer .reserve {
position: relative;
	top: -10px;
}
footer .reserve {
	max-width: 100% !important;
}
footer .reserve .p-blogParts {
		width: 35.139vw;
	margin: 0 auto;
}


footer .l-footer__foot {
	padding: 0;
}
footer .l-footer__foot .l-container {
	width: 100%;
	position: relative;
}
footer .l-footer__nav {
	width: 100%;
	justify-content: right;
	text-align: right;
	padding: 0;
	position: absolute;
	right: 48px;
}
footer .l-footer__nav li {
	display: inline-block;
	line-height: 70px;
}
footer .l-footer__nav li a:first-child {
	border: none;
}
footer .l-footer__nav li a:last-of-type {
	padding-right: 0 !important;
}
footer .copyright {	
	width: 100%;
	line-height: 70px;
	font-weight: bold;
	padding: 0;
	text-align: left !important;
	height: 70px;
}

#breadcrumb {
 display: none;
}

.page .l-topTitleArea {
	height: 336px;
	padding: 8px 0;
	background: url('https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/title_bg.png') top 8px left no-repeat;
background-color: linear-gradient(90deg, #CAA14B 0%, #E3C96E 10%, #F2E184 40%, #E1C162 70%, #DBB657 90%, #D5AC4D 100%);
background-size: auto 336px;
}

.page .l-topTitleArea img {
	padding-left: 45.315vw;
}
.page .l-topTitleArea::before,
.page .l-topTitleArea::after {
background-image: none;
background: linear-gradient(90deg, #CAA14B 0%, #E3C96E 10%, #F2E184 40%, #E1C162 70%, #DBB657 90%, #D5AC4D 100%) top left no-repeat;
opacity: 1;
background-size: 100% 8px;
}
.page .l-topTitleArea::after {
background-position: bottom;
}
.page .l-topTitleArea__body {
	display: flex;	
	justify-content: center;
	padding-right: 54.685vw;
	padding-left: 0;
}
.page .c-pageTitle {
	font-size: 32px;
	padding-top: 30px;
	text-shadow: none;
	letter-spacing:.05em;
}
.page .c-pageTitle__subTitle {
  font-family: "Montserrat", sans-serif;
	font-style: normal;
	font-weight: 300;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 16px;
	margin: 0 3px;
}


#visitor .message {
	max-width: 1111px;
	margin: 0 auto;
}

#visitor .message::before {
	content: '';
	left: calc(50% - 50vw);
	width: 100vw;
	height: 100vw;
	position: absolute;
	background: url('https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/v_message_bg.png') no-repeat;
	background-size: 1366px;
	z-index:-20;
}
#visitor .message {
	overflow: visible;
	background: url('https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/message_img_01.png') no-repeat, url('https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/message_img_02.png') no-repeat;
	background-size: 40%,40%;
	background-position: top 180px left 0, top 500px left 0;
	padding-bottom: 100px;
}
#visitor .message h2 {
	padding-bottom: 74px;
}
#visitor .message h3 {
  font-family: "Shippori Mincho", serif;
	color: #EB731D;
}
#visitor .message h3,
#visitor .message > p,
#visitor .message .name {
	padding-left: 48%;
}
#visitor .message .name {
	font-weight: bold;
	font-size: 24px;
	line-height: 1.7;
	padding-top:46px;
	padding-bottom:46px;
}
#visitor .message .name span {
	font-size: 16px;
	display: block;
}
#visitor .message .sub_info {
	border: 1px solid #DEBB5D;
	background: #FFFAEF;
	padding: 0 40px 40px;
}
#visitor .message .sub_info h4 {
	width: 220px;
	height:60px;
	font-size: 20px;
	line-height: 60px;
	color: #fff;
	text-align: center;
	background: #DEBB5D;
	border-radius: 0 0 8px 8px;
}

#visitor .merits {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	top: 0;
	background: url('https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/merits_bg.png') top center no-repeat;
	background-size: cover;
	z-index:-20;
	padding: 120px 0 60px;
	text-align: center;
}
#visitor .merits .wrap {
	padding: 20px 0 30px;
}
#visitor .merits section {
	background: #EB731D;
}
#visitor .merits h3,
#visitor .merits .wrap p {
	color: #fff;
}

#visitor .worry {
	background: #DEDEDE;
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	top: 0;
	text-align: center;
	padding:80px 40px;
}
#visitor .worry h3 {
	font-size: 24px;
}
#visitor .worry div {
	max-width: 1111px;
	margin: 0 auto;
	padding: 30px 0;
  background-image: repeating-linear-gradient(90deg, #343434, #343434 8px, transparent 8px, transparent 16px), repeating-linear-gradient(180deg, #343434, #343434 8px, transparent 8px, transparent 16px), repeating-linear-gradient(90deg, #343434, #343434 8px, transparent 8px, transparent 16px), repeating-linear-gradient(180deg, #343434, #343434 8px, transparent 8px, transparent 16px);
  background-position: left top, right top, left bottom, left top;
  background-repeat: repeat-x, repeat-y, repeat-x, repeat-y;
  background-size: 100% 1px, 1px 100%, 100% 1px, 1px 100%;
}
#visitor ul {
	list-style: none;
	margin:0;
	padding: 0;
}
#visitor .worry li {
	display: inline-block;
	width: 19%;
	vertical-align: top;
	padding-top: 120px;
}
#visitor .worry li:first-of-type {
	background: url('https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/worry1.svg') top center no-repeat;
}
#visitor .worry li:nth-of-type(2) {
	background: url('https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/worry2.svg') top center no-repeat;
}
#visitor .worry li:nth-of-type(3) {
	background: url('https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/worry3.svg') top center no-repeat;
}
#visitor .worry li:nth-of-type(4) {
	background: url('https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/worry4.svg') top center no-repeat;
}
#visitor .worry li:nth-of-type(5) {
	background: url('https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/worry5.svg') top center no-repeat;
}

#visitor .numbers {
 text-align: center;
	position: relative;
	padding: 40px 0 100px;
}
#visitor .numbers ul {
	display: block;
}
#visitor .numbers li {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	width: 250px;
	height: 250px;
	margin: 16px;
}
#visitor .numbers li div {
    display: flex;
 flex-direction: column;
  justify-content: center;
  align-items: center;
	height: 100%;
  font-weight: 600;
}
#visitor .numbers li::before,
#visitor .numbers li::after {
	content:'';
	position: absolute;
	top: 0;
	left:0;
  width: 250px;
  height: 250px;
  border-radius: 50%;
}
#visitor .numbers li::before{
	z-index: -20;
			background-image: radial-gradient(#FDF7F2 64%, transparent 64%), conic-gradient(#dbdbdb 100%, #dbdbdb 100% 100%);
}
#visitor .numbers li::after{
	z-index: -10;
}
#visitor .numbers li:nth-of-type(1)::after{
    background-image: radial-gradient(#FDF7F2 56%, transparent 56%), conic-gradient(#eb731d 51.666%, rgba(0,0,0,0) 51.666% 100%);
}
#visitor .numbers li:nth-of-type(2)::after{
    background-image: radial-gradient(#FDF7F2 56%, transparent 56%), conic-gradient(#eb731d 25%, rgba(0,0,0,0) 25% 100%);
}
#visitor .numbers li:nth-of-type(3)::after{
    background-image: radial-gradient(#FDF7F2 56%, transparent 56%), conic-gradient(#eb731d 70%, rgba(0,0,0,0) 70% 100%);
}
#visitor .numbers li:nth-of-type(4)::after{
    background-image: radial-gradient(#FDF7F2 56%, transparent 56%), conic-gradient(#eb731d 94.6%, rgba(0,0,0,0) 94.6% 100%);
}
#visitor .numbers li p {
	font-size: 24px;
	line-height: 1.3;
	color: #eb731d;
}
#visitor .numbers li p span {
	font-size: 32px;
	line-height: 1.1;
	font-weight:700;
}
#visitor .numbers li p span.num {
	font-size: 64px;
}
#visitor .numbers li:nth-of-type(2) p {
	position: relative;
	top:10px;
}
#visitor .numbers li:nth-of-type(2) p span{
	position: relative;
	top:-8px;
}
#visitor .numbers li:nth-of-type(3) p {
	position: relative;
	top:-8px;
}

#visitor .voice {
	text-align: center;
	background: #fff;
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	padding: 80px 0;
}
#visitor .voice ul {
	display: block;
	width: 5000px;
	text-align: left;
}
#visitor .voice li {
	width: 945px;
	margin: 26px 200px;
	display: inline-block;
}
#visitor .voice li p::before {
	content: '';
	width: 101px;
	height: 104px;
	position: absolute;
	top:-50px;
	right: 30px;
background:  url('https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/voice_bg.svg') top right no-repeat #fff;
}
#visitor .voice li p {
	width: 668px;
	padding: 50px 70px 50px 80px;
	font-size: 14px;
	background: #FDF7F3;
	border: 1px solid #EB731D;
	border-radius: 8px;
	margin-left: 277px;
}
#visitor .voice li::before {
	content: '';
	width: 340px;
	height: 340px;
	background: #ccc;
	border-radius: 50%;
	position: absolute;
	top:-50px;
	left: 0;
}
#visitor .voice li .who {
	position: absolute;
	top: 300px;
	left: 34px;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	background: #eb731d;
	color: #fff;
	padding: 16px 34px;
	border-radius: 16px;
}
#visitor .voice li .who span {
	display: block;
	font-size: 16px;
	font-weight: normal;
}
#visitor .cta {
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	top: 0;
	background: url('https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/cta_bg.png') top center no-repeat;
	background-size: cover;
	padding: 90px 10% 40px;
	text-align: center;
}
#visitor .cta h3 {
	font-size: 24px;
	padding-bottom: 0;
}
#visitor .cta > p {
	padding: 20px;
}

#plan {
	max-width: 1111px;
	margin: 0 auto;
	text-align: center;
}
#plan .plan_s,
#plan .process {
	background: #fff;
	border-radius: 8px;
	padding: 80px 40px 40px;
	margin-bottom: 80px;
	margin-top: 20px !important;	
}
#plan .plan_s table {
	max-width: 870px;
	margin: 0 auto;
	margin-bottom: 30px;
}
#plan .plan_s table thead th {
	border: none;
	text-align: center;
	position: relative;
	padding: 18px 0 14px;
	font-size: 24px;
}
#plan .plan_s table thead th > span {
	display: block;
  font-family: "Montserrat", sans-serif;
	font-weight: 300;
	font-size: 14px;
}
#plan .plan_s table thead th div {
	background: linear-gradient(135deg, #DEBB5D 0%, #F2E184 45%, #D5AC4D 100%);
	width:132px;
	display: inline-block;
	text-align: center;
	font-size: 13px;
	position: absolute;
	top: -22px;
	left: 50%;
	margin-left:-66px;
	z-index: 100;
	border-radius: 4px;
	font-weight: bold;
	padding: 6px 0;
box-shadow: 0 0 4px rgba(100,52,19,0.3);
	color: #343434;
}
#plan .plan_s table thead th div::after {
	content:'';
	background: linear-gradient(135deg, #DEBB5D 0%, #F2E184 45%, #D5AC4D 100%);
  width: 9px;
  height: 8.5px;
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
position: absolute;
	z-index: 1100;
	left: 50%;
	margin-left: -0.5em;
top: 32px;
}
#plan .plan_s table thead th div span {
	background: #343434;
	color: #fff;
	padding: 1px 4px 2px;
	margin-right: 5px;
}

#plan .plan_s table thead th:first-of-type {
	background: none;
	border: none;
}
#plan .plan_s table thead th:nth-of-type(2) {
	border-radius: 8px 0 0 0;
	width: 38%;
}
#plan .plan_s table thead th:nth-of-type(3) {
	border-radius: 0 8px 0 0;
	background: #DEBB5D;
	width: 38%;
	text-shadow: #937719 0 0 8px;
}
#plan .plan_s table tbody th {
	background: #fff;
	border-color: #DBDBDB;
	height: 60px;
	padding-left: 20px;
}
#plan .plan_s table tbody td {
	text-align: center;
	border-color: #DBDBDB;
	font-weight: bold;
}
#plan .plan_s table tbody td span,
#plan .plan_s table tbody td div {
	font-size: 12px;
}
#plan .plan_s table tbody td:nth-child(2) {
	color: #EB731D;
}
#plan .plan_s table tbody td:nth-child(3) {
	background: #FFFAEF;
	color: #DEBB5D;
}

#plan .process {
	padding: 80px 14.4%;
}
#plan .process h2 {
	font-size: 2em;
	padding-bottom: 14px;
}
#plan .process ol {
	text-align: left;
	list-style-type: none;
	counter-reset: number 0; 
	border-top: 1px solid #EB731D;
	margin: 40px 0 30px;
	padding: 0;
	display: block;
}
#plan .process ul {
	list-style-type: none;
	padding-left:0;
}
#plan .process ol > li:not(:first-child) ul {
	margin-top: 24px;
}
#plan .process li {
	margin:0;
}
#plan .process ol > li {
	border-bottom: 1px solid #EB731D;	
	padding: 50px 0 40px;
	padding-left: 31%;
}
#plan .process ul > li {
	padding-left: 14px;
}
#plan .process ul > li::before {
	content:'';
	background: #343434;	
	width: 4px;
	height: 4px;
	margin: 11px 4px;
	position: absolute;
	top: 0;
	left:0;
	border-radius: 50%;
}
#plan .process h3 {
	font-size: 1.25em !important;
	color: #EB731D;
	position: absolute;
	left: 0;
	padding-top: 84px;
}
#plan .process h3::before {
		  font-family: "Montserrat", sans-serif;
	font-weight: 100;
	font-size: 80px;
	color: #EB731D;
counter-increment: list-num;
counter-increment: number 1;
content: counter(number, decimal-leading-zero);
	position: absolute;
	top:0;
	left:0;
	line-height: 1;
}
#plan .process h4 {
	font-weight: normal;
	font-size: 16px;
	margin: 24px 0 2px;
}
#plan .process h4::before {
 content: '■ ';
}
#plan .process li p{
	line-height: 1.5;
}

#flow {
	max-width: 1111px;
	margin: 0 auto;
	text-align: center;
	padding: 20px 0;
}
#flow ol {
	text-align: left;
	list-style-type: none;
	counter-reset: number 0;
	margin: 0;
	padding: 0;
	display: block;
}
#flow ol li {
	background: #fff;
	border: 1px solid #EB731D;
	border-radius: 8px;
	padding: 28px;
	text-align: right;
	position: relative;
	margin: 0 0 35px;
	display: flex;
	justify-content:;
	align-items : center;

}
#flow ol li:not(:last-child)::after {
	position: absolute;
	bottom: -35px;
	left: 50%;
	margin-left: -48.5px;
	content: '';
  width: 97px;
  height: 35px;
  background: #EB731D;
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
}
#flow ol li .shoulder {
	position: absolute;
	width: 80px;
	top: -20px;
	left: 40px;
}
#flow ol li .text {
	display: inline-block;
	width: 51%;
	padding: 0 4.5%;
	text-align: left;
	vertical-align: middle;
}
#flow ol li > img {
	width: 48%;
	display: inline-block;
	vertical-align: middle;
}
#flow h2 {
  font-family: "Zen kaku Gothic Antique", sans-serif;
	font-size: 32px;
	margin-bottom:0;
	padding: 0 0 18px 60px;
}
#flow h2::before {
  font-family: "Montserrat", sans-serif;
font-style: normal;
font-weight: bold;
	font-size: 36px;
counter-increment: list-num;
counter-increment: number 1;
content: counter(number, decimal-leading-zero)'.';	
	line-height: 1;
	margin: 5px 0;
}
#flow p {
	line-height: 1.75;
}

#qa {
	max-width: 800px;
	margin: 0 auto;
	padding: 0 0 20px;
}
#qa details {
  max-width: 800px;
  margin: 0 auto 1.2em;
  font-family: "Zen kaku Gothic Antique", sans-serif;
	position: relative;
  transition: 0.5s;
}
#qa details::before,
#qa details p::before {
  position: absolute;
  left: 0.8em;
  font-weight: 600;
  font-size: 2em;
}
#qa details::before {
  color: #EB731D;
  content: "Q";
}
#qa details p::before {
  color: #626262;
  line-height: .9;
  content: "A";
}
#qa details summary {
   color: #EB731D;
   padding: 10px 10px 10px 15px;
   cursor: pointer;
   outline: none;
   font-weight: bold;
   position: relative;
   list-style: none;
   transition: 0.5s;
   border-bottom: 1px solid #DEBB5D; 
	padding: 1em 4em 1em 4.4em;
}
#qa details summary:before,
#qa details summary:after {
   position: absolute;
   content: '';
   pointer-events: none;
   top: 50%;
   transform: translate(50%, -50%);
   transition: transform 0.3s ease;  
}
#qa details summary:before {
   right: 30px;
   width: 20px;
   height: 3px;
   border-bottom: 3px solid #EB731D;
}
#qa details summary:after {
   right: 30px;
   top: calc(50% + .5px);
   width: 3px;
   height: 20px;
   border-right: 3px solid #EB731D;
}
#qa details[open] summary:after {
   transform: translate(50%, -50%) rotate(270deg);
   right: 30px;
   top: calc(50% + 0px);
}
#qa details p {
   transition: 0.3s;
   box-sizing: content-box;
	color: #626262;
	background: #fff;
	padding: 1.4em 2em 1.4em 4.4em;
}
#qa details[open] p {
  animation: fadeIn 0.3s ease;
}

#contact {
	max-width: 668px;
	margin: 0 auto;
	padding: 0 20px;
	text-align: center;
}
#contact h2 {
	font-size: 1.5em;
}
#contact .contact_line {
	max-width: 604px;
	padding: 3.311%;
	text-align: right;
	background: url(https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/line_logo.svg) center left 1em no-repeat #06C755;
	background-size: 19.868%;
	border-radius: 8px;
	margin-bottom: 70px;
}
#contact .contact_line h2 {
	font-size: 22px;
	line-height: 1.6;
	color: #fff;
	display: inline-block;
	margin: 0;
	padding: 0 20px 0 20%;
	vertical-align: middle;
	font-weight: 500;
}
#contact .contact_line img {
	width: 18.212%;
	display: inline-block;
	vertical-align: middle;
}
@media screen and (max-width: 679px) and (min-width: 600px) {
#contact .contact_line h2 {
	font-size: 3.1vw;
}
}
@media screen and (max-width: 599px) and (min-width: 0px) {
#contact .contact_line {
	padding: 20px;
	text-align: center;
	background: url(https://www.konkatsukukuri.com/wp-content/themes/swell-child/img/line_logo.svg) top center no-repeat #06C755;
	background-size: 120px;
	border-radius: 8px;
	margin-bottom: 70px;
}
#contact .contact_line h2 {
  font-family: "Noto Sans JP", sans-serif;
	font-size: 4.8vw;
	line-height: 1.6;
	color: #fff;
	display: inline-block;
	margin: 0;
	padding: 90px 3.9% 20px;
	vertical-align: middle;
	font-weight: 500;
}
#contact .contact_line img {
	width: 110px;
	display: inline-block;
	vertical-align: middle;
}
}
#contact .contact_form {
	border-top: 1px dashed #EB731D;
	padding: 70px 0;
}
#contact .contact_form h2 {
	color: #343434;
	letter-spacing: .05em;
}
#contact .contact_form h2 span {
	color: #EB731D;
	line-height: 2.2;
	letter-spacing: 0;
}
#contact .contact_form form {
	text-align: left;
}
#contact .contact_form form > p {
	padding-bottom: 24px;
}
#contact .contact_form label,
#contact .contact_form .title {
	font-weight: bold;
	vertical-align: middle;
	line-height: 2.5;
	letter-spacing: .05em;
}
#contact .contact_form label span:not(.wpcf7-list-item-label,.wpcf7-form-control-wrap),
#contact .contact_form .title span {
	color: #EB731D;
	font-size: 10px;
	vertical-align: middle;
	padding-left: 10px;
}
#contact .contact_form form	::placeholder{
	color: rgba(57,57,57,.35);
}
#contact .contact_form label > span input,
#contact .contact_form textarea {
	width: 100%;
	background: #fff;
	border: none;
	border-radius: 10px;
	font-size: 14px;
	line-height: 3.4;
	padding: 0 30px;
}
#contact .contact_form textarea {
	height: 10em;
}
#contact .contact_form .wpcf7-form-control-wrap > span > span {
	display: block;
	margin: 0;
}
#contact .contact_form .title,
#contact .contact_form form > p:first-of-type {
	display: inline-block;
	width: clac(100% - 220px);
	vertical-align: top;
}
#contact .contact_form .title {
	min-width: 210px;
}
#contact .contact_form form > p:first-of-type {
	padding-top:12px;
}
#contact .contact_form .wpcf7-form-control-wrap label {
  display: flex;
  align-items: center;
  column-gap: 10px;
  width: fit-content;
  line-height: 1;
  cursor: pointer;
	font-size: 0.875em;
	font-weight: 400;
 margin-bottom: 12px;
}
#contact .contact_form .wpcf7-form-control-wrap .optional label {
	width: 100%;
	justify-content: center
}
#contact .contact_form .wpcf7-form-control-wrap .optional label a {
	color: #343434;
	border-bottom: 1px solid #343434;
}
#contact .contact_form .wpcf7-form-control-wrap .optional label a:hover {
	color: #EB731D;
	border-bottom: 1px solid #EB731D;
}
#contact .contact_form label input[type="checkbox"] {
  appearance: none;
  position: relative;
  width: 20px;
  height: 20px;
  border: 1px solid #eb731d;
  border-radius: 4px;
  cursor: pointer;
	background: #fff;
}

#contact .contact_form label input[type="checkbox"]:checked {
  background-color: #eb731d;
}

#contact .contact_form label input[type="checkbox"]::after {
  content: "";
  position: absolute;
  top: 5px;
  left: 3px;
  width: 12px;
  height: 6px;
  border-bottom: 2px solid #ffffff;
  border-left: 2px solid #ffffff;
  transform: rotate(-45deg);
}
#contact .contact_form input[type="submit"] {
	display: block;
	border:none;
	color:#fff;
	background:  linear-gradient(90deg, #EB731D 0%, #FDBC3F 100%);
	width: 130px;
	line-height: 2.7em;
	border-radius: 8px;
	margin: 4px auto 0;
}


/* ================================= ワイド　PC ================================== */

@media print, screen and (min-width: 1367px) {
	.page .l-topTitleArea {
	background-size: 45.315vw auto;
}
	
}


/* ================================= PC、タブレット ================================== */
@media screen and (max-width: 1366px) and (min-width: 960px) {

}

/* ================================= タブレット ================================== */
@media screen and (max-width: 1199px) and (min-width: 960px) {

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

	.-series .l-header__logo {
		margin-right: 0;
	}
.c-gnav li.menu-item > a {
	padding-left: 1vw !important;
	padding-right: 1vw !important;
	letter-spacing: 0;
}

.c-gnav li:last-of-type {
	padding: 0 8px;
	margin-left: 12px;
}
.c-gnav li:last-of-type a span {
	font-size: 15px !important;
	padding: 0 24px 0 0;
}
.c-gnav li:last-of-type a span::before,
.c-gnav li:last-of-type a span::after {
  right: 6.5px;
	z-index: 1000;
}
	.c-gnav li:last-of-type a {
	padding-left: 8.5px !important;
	padding-right: 8.5px !important;
}

#visitor .merits section,
	.home .value section {
		max-width: 30%;
	}

.numbers {
		max-width: 700px;
		text-align: center;
		margin: 0 auto;
	}


#flow ol li {
min-height: 350px;
}
#flow ol li .text {
		padding: 0 3% 0 1%;
	}	

	.footer_link h2 {
		font-size: 5.333vw;
	}
.footer_link > div a {
	padding: 5.3vw 6.2vw;	
}
.footer_link > div h2 {
	padding-bottom: 18px;
}
.footer_link > div p {
	font-size: 1.666vw;
}

.footer_link > div a::before {
	right: 5.833vw;
  top: calc(50% - 3.333vw);
  width: 6.666vw;
  height: 6.666vw;
}
.footer_link > div a h2::before,
.footer_link > div a h2::after {
  top: calc(50% - -0.5px);
  right:8.5vw;
  width: 1.333vw;
  height: 1px;
  transform-origin: calc(100% - 0.5px) 50%;
}
.footer_link > div a h2::before {
  transform: rotate(37.5deg);
}
.footer_link > div a h2::after {
  transform: rotate(-37.5deg);
}

	
}




@media screen and (max-width: 959px) and (min-width: 760px) {

.footer_link > div {
 	display: block;
	width: 100%;
}
.footer_link > div:last-of-type {
	width: 100%;
}
.footer_link > div a {
	padding: 60px 70px;
	display: block;
}
.footer_link > div h2 {
	display: inline-block;
}
.footer_link > div p {
	font-size: 20px;
	padding: 0 40px;
	display: inline-block;
	position: absolute;
	right: 140px;
}
.footer_link .line {
		border-right: 0;
		border-bottom: 1px solid #eb731d;
}
.footer_link > div a::before {
	right: 70px;
  top: calc(50% - 40px);
  width: 80px;
  height: 80px;
	border-radius: 50%;
}
.footer_link > div a h2::before,
.footer_link > div a h2::after {
  top: calc(50% - -0.5px);
  right:102px;
  width: 16px;
  transform-origin: calc(100% - 0.5px) 50%;
}


}

@media screen and (max-width: 959px) and (min-width: 600px) {

#visitor .message {
	background-position: top 180px left 0, top 50vw left 0;
}	

#plan .process {
	padding: 80px 8%;
}
	#flow {
	max-width: 720px;
}

.f_contact {
	padding-right:0;
background-position: left 40vw  center ;
}	

}



/* ================================= スマホ と　タブレット================================== */
@media screen and (max-width: 959px) and (min-width: 0px) {

	#main_visual {
		height: 60vw;
	}

#visitor .merits section,
	.home .value section {
		max-width: 100%;
	margin: 24px 1% !important;
	}

#visitor .worry {
	padding:80px 4%;
}
	#visitor .worry li {
		min-width: 190px;
		margin: 18px 3px;
		background-size: 50% auto;
}

#flow ol li {
	display: block;
}
#flow ol li .text ,
	#flow ol li > img {
	width: 100%;
	display: block;
}
#flow ol li .text {
	padding: 60px 0 30px;
}


	.f_contact::before {
	background-size: 180px;
	}
	.f_contact p {
		text-shadow: 0 0 5px #fff;
	}

	.w-footer__box {
	max-width: 100%;
	margin-top: 0 !important;
		text-align: center;
}
.w-footer__box:first-of-type {
border-radius: 8px 8px 0 0;
padding: 30px 30px 10px 30px;
}
.w-footer__box:last-of-type {
	border-radius: 0 0 8px 8px;
}
	.footer_logo {
		margin: 0 auto;		
	}

}

@media screen and (max-width: 759px) and (min-width: 0px) {

	#main_visual {
		height: 110vw;
	}

#visitor .message {
	background-size: 60%,60%;
	background-position: top 240px left 0, top 120px right 0;
}
#visitor .message h3,
#visitor .message > p,
#visitor .message .name {
	padding-left: 30px;
}
	#visitor .message h3{
		padding-top: 54vw;
	}
	#visitor .merits {
		padding-top: 60px;
	}
	#visitor .merits h2 {
		padding-bottom: 20px;
	}
	
#visitor .merits section,
.home .value section {
	width: 80%;
	height: auto;
	padding: 30px 6%;
	margin: 20px 12px !important;
}

.f_contact {
	padding-right: 0;
	padding-bottom: 40vw;
	background-size: auto 120%;
background-position: left 30vw  center ;
}

.footer_link > div {
 	display: block;
	width: 100%;
}
.footer_link > div:last-of-type {
	width: 100%;
}
.footer_link .line {
border-right: 0;
border-bottom: 1px solid #eb731d;
}

footer .l-footer__nav {
	text-align: center;
	position: relative;
	right: 0;
	bottom: 0;
display: block;
	margin-top: 30px;
}
	footer .l-footer__nav li {
line-height: 1;
	border-right: 1px solid #ccc;
		padding: 0 10px;
	}
	footer .l-footer__nav li:first-of-type {
		border-left: 1px solid #ccc;
}
	footer .l-footer__nav li a {
		padding: 0;
	}
footer .copyright {	
	line-height: 70px;
	font-weight: bold;
	padding: 0;
	text-align: center !important;
	height: 70px;
}

}


/* ================================= スマホ ================================== */
@media screen and (max-width: 599px) and (min-width: 0px) {

	#main_visual {
		height: 182vw;
	}

/**** 共通 ****/

.page .l-topTitleArea {
	height: auto;
background-size: auto 238px;
}
.page .l-topTitleArea__body {
	padding:0;
}
.page .c-pageTitle__subTitle {
	top: 16px;
	padding: 0;
}
.page .l-topTitleArea__body::before {
	width: 100vw;
	height: 100%;
	content: '';
	position: absolute;
	background: rgba(0,0,0,0.15);
	display: block;
}
	.page .c-pageTitle {
		display: block;
		margin: 0 auto;
		padding: 40px 0 10px;
	}

	#visitor .merits section,
.home .value section {
	width: 90%;
}

#plan .process {
	padding: 60px 6%;
}
#plan .process ol > li {
	padding: 0 0 40px;
}
#plan .process h3 {
	font-size: 20px;
	position: relative;
	padding: 50px 0 40px 20px;
	display: inline-block;
	vertical-align: middle;
}

#plan .process h3::before {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	left: -20px;
	top: -4px;
}

#plan .plan_s,
#plan .process {
	width: 100vw;
	border-radius: 0;
	padding: 60px 20px 40px;
	margin-bottom: 60px;
	position: relative;
	left: calc(50% - 50vw);
	}

#plan .plan_s table thead th {
	padding: 18px 10px 14px;
}
#plan .plan_s table thead th:nth-of-type(2) {
	width: 45%;
}
#plan .plan_s table thead th:nth-of-type(3) {
	width: 45%;
}
#plan .plan_s table tbody th {
padding: 10px;
font-size: 16px;
line-height:1.2;
}

	.f_contact {
background-position: left 15vw  bottom ;
}

	.f_contact .tel_info {
		width: 100%;
		height: auto;
		border-radius: 100%;
	}
	.f_contact .tel_info a {
		border-radius: 0;
		background-position : left 8vw center;
		background-size: 13vw;
		text-align: center;
		padding: 12px 0 20px;
		padding-left: 14vw;
	}
	.f_contact .tel_info a {
		font-size: 9vw;
	}
	.f_contact .tel_info a span {
		font-size: 3vw;
	}


}