@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/
#fix_bottom_menu+.p-fixBtnWrap{
	z-index:9999;
}

.top #content{
	    padding-top: 0em;
}
.p-mainVisual.-margin-on{
	padding: 50px;
}

#main_visual > div > div > div > div.p-mainVisual__slideTitle{
	text-align:left;
}

.c-mvBtn {
    margin: 0.5em auto 0 0;
}

.worry-in-sec{
	margin:0 8%;
}
#worry{
	margin-bottom:8px;
}
/*下線*/
#worry > strong:after,
#support > strong:after,
#merit> strong:after,
#message> strong:after,
#contact> strong:after,
#cta > strong:after,
#news > strong:after,
#company > strong:after{
  content: '';
  position: absolute;
  left: 50%;
  bottom: -32px;/*線の上下位置*/
  display: inline-block;
  width: 60px;/*線の長さ*/
  height: 2px;/*線の太さ*/
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);/*位置調整*/
  background-color:#036ed6;/*線の色*/
  border-radius: 2px;/*線の丸み*/
}
.worry-support-text{
	width:fit-content;
	margin:0 auto!important;
	background:white;
	 padding: 2%!important;
	color:#036ED6;
	font-size:26px!important;
}
.worry-support-text:before{
	background: #036ed6!important;
	height: 4px!important;
}
.support-in-sec{
	margin:0 8%;
}
.support-in-sec h3{
	height:72px;
	text-align: center;
}
#main_content > div > div > div:nth-child(2) > div.swell-block-fullWide__inner > div > div > div:nth-child(2) > h3,
#main_content > div > div > div:nth-child(2) > div.swell-block-fullWide__inner > div > div > div:nth-child(3) > h3{
	line-height:72px;
}
#content{
	margin-bottom:0;
}
#footer > div > div.l-footer__widgetArea{
	padding-top:4em;
	padding-bottom: 3em;
}

#footer > div > div.l-footer__foot{
		font-size:12px;
	color:white;
	font-weight:600;
}
#text-5{
	font-size:14px;
	color:white;
	font-weight:600;
}
.w-footer{
	max-width:95%;
}
.w-footer__box:nth-child(1) {
    flex: 0.25;
    padding: 1em;
}
.w-footer__box:nth-child(2) {
background: white;
    align-self: center;
    display: flex;
    place-items: center;
    height: 160px;
	justify-content:center;
}
#menu-lp-menu-3{
	display:flex;
}
#menu-lp-menu-3 a{
	font-size: 14px;
    font-weight: 600;
	border-bottom:0px;
}

.w-footer__box:nth-child(3) {
    flex: 0.45;
background: white;
    align-self: center;
    display: flex;
    place-items: center;
    height: 160px;
}

label {
font-size: 1.125rem;
	font-weight:600;
}
label > span {
font-size: 1.025rem;
	color:#FF0000;
}
#wpcf7-f332-p28-o1 > form > p:nth-child(6){
	margin-bottom:24px;
}
input[name="your-name"],
input[name="your-email"],
input[name="your-tel"],
input[name="your-subject"]{
width: 100%;
margin-top: 10px;
margin-bottom: 24px;
	background: white;
}
textarea[name="your-message"] {
width: 100%;
margin-top:10px;
margin-bottom: 20px;
	background: white;
}
#wpcf7-f332-p28-o1 > form > p:nth-child(6),
#wpcf7-f332-p28-o1 > form > p:nth-child(7){
	text-align:center;
}
.wpcf7-list-item{
	margin:0;
}
.wpcf7-not-valid-tip{
	margin-top:-18px;
	font-weight: 600;
}
.wpcf7-submit {
border: none;
cursor: pointer;
line-height: 1;
font-size: 1.2rem;
background-color: var(--color_main);
color: #ffffff;
border-radius: 40px;
padding: 18px 96px;
box-shadow: var(--swl-btn_shadow);
transition: box-shadow .25s;
	font-weight:600;
}
.wpcf7-submit:hover {
box-shadow:0 4px 12px rgb(0 0 0 / 10%),0 12px 24px -12px rgb(0 0 0 / 20%);
opacity: 1;
}

#main_visual > div > div > div > div.p-blogParts.post_content > div > div > div:nth-child(2) > div > a{
	background:white;
}
#main_visual > div > div > div > div.p-blogParts.post_content > div > div > div:nth-child(2) > div > a:hover{
	background:white;
	color:var(--color_main)!important;
	box-shadow:0 4px 12px rgb(0 0 0 / 10%),0 12px 24px -12px rgb(0 0 0 / 20%);
}
#main_visual > div > div > div > div.p-blogParts.post_content > div > div a{
	width: 96%;
	font-weight:600;
}

#main_content > div > div > div:nth-child(6) > div > div > div a{
	width: 96%;
	font-weight:600;
}
#main_content > div > div > div:nth-child(6) > div > div > div{
	justify-content:center;
}
#main_visual > div > div > div > div.p-mainVisual__slideTitle img{
	width:50%;
}
	.img_pc{
		display:block;
	}
	.img_sp{
		display:none;
	}
.p-mainVisual__textLayer{
	row-gap: 24px;
	top:-30px;
}
#main_content > div > div > div:nth-child(8) > div > div > div{
	background:white;
	padding:100px;
}
#main_content > div > div > div:nth-child(8) > div > div > div > dl{
	width: 78%;
    margin: 0 auto;
    row-gap: 32px;
	    font-weight: 600;
}
	.wpcf7-spinner{
		position:absolute;
	}
.page-id-334 #main_content,
.page-id-448 #main_content{
	margin-bottom: 7.2em;
}
@media screen and (max-width: 782px){
	#main_content > div > div > div:nth-child(1) > div > figure{
		margin-top:40px;
	}
	.-img .c-headLogo__link {
    display: block;
    padding: 14px 8px;
}
	.l-header__inner{
		background:#F2FCFF;
		border-bottom:3px solid #4292E0;
	}
	.c-iconBtn__icon:before {
    display: block;
    color: #197ADA;
}
	.p-mainVisual.-margin-on{
	padding: 0px;
}
	#main_visual > div > div > div > div.p-mainVisual__slideTitle img{
	width:100%;
}
	.u-obf-cover {
    display: block;
    height: 100%!important;
    -o-object-fit: contain;
    object-fit: contain;
    position: absolute;
		bottom: 230px;
    transform: scale(1.6);
}
	.p-mainVisual__textLayer{
		row-gap: 18px;
		top: 0px;
	}
	.swell-block-columns__inner{
		row-gap: 16px;
	}
	.img_pc{
		display:none;
	}
	.img_sp{
		display:block;
	}
	#main_content > div > div > div:nth-child(8) > div > div > div{
	background:white;
	padding:62px 16px 56px;
}
#main_content > div > div > div:nth-child(8) > div > div > div > dl{
	width: 88%;
    row-gap: 24px;
}
	#main_content > div > div > div:nth-child(8),#main_content > div > div > div:nth-child(8) > div > div{
		padding:0!important;
	}
	.l-content {
    margin: 0 auto 2em;
}
	#main_content > div > div > div.swell-block-fullWide.pc-py-80.sp-py-40.alignfull > div{
		width:95%;
	}
	#main_content > div > div > div.swell-block-fullWide.pc-py-80.sp-py-40.alignfull > div > div.swell-block-columns > div{
		row-gap: 48px;
	}
	#main_content > div > div > div.swell-block-fullWide.pc-py-80.sp-py-40.alignfull > div > div.swell-block-columns > div > div:nth-child(1) > h3{
		font-size:1.0em;
		padding: 1.6em 0.8em 2.4em;
		margin-block-end:40px;
	}
	.support-in-sec h3 {
		font-size:1.25em;
    height: 102px;
}
	.post_content h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
    padding: 0.5em 0.5em 1.5em;
}
	#main_content > div > div > div:nth-child(4) > div.swell-block-fullWide__inner.l-container{
		width:85%;
	}
	#main_content > div > div > div:nth-child(5) > div > div{
		    width: 90%;
    margin-inline: auto;
	}
		#contact{
		font-size:24px;
	}
	#contact > strong > span{
		font-size:20px;
	}
	#worry,
#support,
#merit,
#message,
#contact,
#cta,
#news,
#company{
		    width:92%;
    margin-inline: auto!important;
	margin-block-end: 80px!important;
	}
	#merit{
		    width:98%;
    margin-inline: auto!important;
	margin-block-end: 64px!important;
	}
	#main_content > div > div > div:nth-child(1) > div > div.swell-block-columns.column-reverse > div > div > h3{
		width:82%;
	}
	.p-mainVisual__textLayer {
		    padding: 0 7vw 0 4vw;
}
	.w-footer__box:nth-child(2){
height: 200px;
	}
	#menu-lp-menu-3 {
   		display:grid;
		
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr 1fr;
    grid-template-areas:
        "a a a b b b"
        "c c d d e e"
		"f f g g h h";
}
	#menu-lp-menu-3 > li:nth-child(1){
		grid-area: a;
	}
	#menu-lp-menu-3 > li:nth-child(2){
		grid-area: b;
	}
	#menu-lp-menu-3 > li:nth-child(3){
		grid-area: c;
	}
	#menu-lp-menu-3 > li:nth-child(4){
		grid-area: d;
	}
	#menu-lp-menu-3 > li:nth-child(5){
		grid-area: e;
	}
	#menu-lp-menu-3 > li:nth-child(6){
		grid-area: f;
	}
	#menu-lp-menu-3 > li:nth-child(7){
		grid-area: g;
	}
	#menu-lp-menu-3 > li:nth-child(8){
		grid-area: h;
	}
	.w-footer__box:nth-child(3) {
		justify-content:center;
}
	#footer > div > div.l-footer__widgetArea {
    padding-top: 2em;
    padding-bottom: 1em;
}
	#fix_bottom_menu .menu-item{
		display:flex;
	}
	#fix_bottom_menu .menu_list{
		    column-gap: 24px;
		height:72px;
	}
	#fix_bottom_menu .menu-item a {
    width: fit-content;
}
		#fix_bottom_menu > ul > li:nth-child(1){
		    width: fit-content;
    flex-basis: 50%;
    justify-content: flex-end;
	}
	#fix_bottom_menu > ul > li:nth-child(2){
		    width: fit-content;
    flex-basis: 15%;
    justify-content: flex-start;
	}
	#fix_bottom_menu {
    bottom: -72px;
}
}

@media screen and (max-width: 375px){
	.p-mainVisual__textLayer{
		top: -20px;
	}
}