@charset "UTF-8";
/*
Theme Name: mori-nenkin-child
Template: mori-nenkin
*/

:root{/*viewport:320px-1200px*/
	--size50-100:clamp(3.125rem, 1.989rem + 5.68vw, 6.25rem);
}/*var()*/

.bg_grn{background-color:#ccecb9;}
.bg_ylw{background-color:#ffffd0;}
.bg_blu{background-color:#e2f3fb;}
.bg_bge{background-color:#f8f8f8;}
.full_width{width:100vw;margin:0 calc(50% - 50vw);padding:var(--size50-100) 0;text-align:center;box-sizing:border-box;}
.cnt_titl{display:inline-block;margin:0 auto;font-size:2.8rem;font-weight:600;text-align:center;}
.brdr_pnk{border-bottom:6px dotted #ffccd5;}
.pnk_txt{color:#e14375;}
.cnt_txt{text-align:center;}
.lft_txt{text-align:left;}
.marker_line{font-weight:600;display:inline;background:linear-gradient(transparent 50%,#fcee21 50%);box-decoration-break:clone;-webkit-box-decoration-break:clone;}
/* チェックリスト */
ul.chkbx{display:inline-block;width:auto;margin:1rem auto;}
ul.chkbx li{position:relative;margin:0.2rem 0;padding-left:24px;text-align:left;}
ul.chkbx li::before{content:'';position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:3px;background-color:#008fd9;}
ul.chkbx li::after {content:'';position:absolute;top:0.2em;left:0.4em;transform:rotate(50deg);width:5px;height:10px;border-right:3px solid #fff;border-bottom:3px solid #fff;}
/* ボックスレイアウト */
.boxLayout{position:relative;margin-top:1em;padding:4.8em 1.5em 1em 1.5em;border:2px solid #008fd9;border-radius:30px;}
.boxLayout div:first-child{position:absolute;top:-1.15em;left:3em;padding:.4em 1.4em;border-radius:25px;background-color:#008fd9;color:#fff;font-size:1.6em;font-weight:600;}
.boxLayout div:first-child::before{position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);width:16px;height:8px;background-color:#008fd9;clip-path:polygon(0 0, 100% 0, 50% 100%);content:'';}
@media screen and (min-width:768px){
	.boxLayout{padding:1.8em 1.5em 1em 1.5em;}
}
/* PC/SP切り替え */
.sp-act{display:block;}
.pc-act{display:none;}
@media screen and (min-width:768px){
	.sp-act{display:none;}
	.pc-act{display:block;}
}
/*左揃え+上揃え*/
.flex_lft{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-start;}
/*左揃え+上下中央*/
.flex_lftmdl{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;}
/*中央揃え+上揃え*/
.flex_cnt{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:center;}
/*中央揃え+上下中央*/
.flex_cntmdl{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;}
.flex_cntmdl > *{margin:auto;}
/*中央揃え+下揃え*/
.flex_cntbtm{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:center;}
/*右揃え+上揃え*/
.flex_end{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-end;}
/*右揃え+上下中央*/
.flex_endmdl{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;}
/*両端1/2&均等+上揃え*/
.flex_ard{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-around;}
/*両端1/2&均等+上下中央*/
.flex_ardmdl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-around;}
/*両端1/2&均等+下揃え*/
.flex_ardbtm{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-around;}
/*両端揃え+上揃え*/
.flex_btw{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;}
/*両端揃え+上下中央*/
.flex_btwmdl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;}
/*両端揃え+下揃え*/
.flex_btwbtm{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;}
/*両端揃え+均等+ストレッチ*/
.flex_strc{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:space-between;}
/*縦の長さstretch*/
.flex_stretch{align-items:stretch;}

/* 上書き */
header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;width:100%;margin:0 auto;padding:30px 0 0 30px !important;}
header .header_logo{margin:20px auto 10px auto;}
header .header_content{margin:0 0 10px auto;}
header .header_content #g_navi{width:600px !important;}
header .header_content #g_navi ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-around;}
#slider .slides img{width:100% !important;margin:0 !important;}
.top_box03,.top_box04{padding:var(--size50-100) 0;text-align:center;}
.top_box03 p,.top_box04 p{text-align:left;}
.top_box04 .top_box04_tit{padding:0;text-align:left;line-height:1;}
.top_box04 .top_box04_tit .main_txt{display:inline-block;font-size:2.8rem;background:#fff;}
.top_box04 .top_box04_tit .main_txt::first-letter{color:#2eb4e0;font-size:4.2rem;}
.top_box04 .top_box04_tit .blue{margin:0 !important;padding:0 16px 0 10px !important;background:#fff;}
.top_box04 .top_box04_tit::before{display:inline-block;position:relative;width:70px;height:50px;margin:0;background:url('../mori-nenkin/images/tit_icon01.jpg') no-repeat left bottom #fff;}
.top_box04 .top_box04_tit::after{bottom:6px;width:100%;z-index:-1;}
.blog_post_parts figure{width:300px;}
footer{margin-top:0;}
.to_top{left:30px !important;width:70px;z-index:999;}
.another_teaser{width:100%;height:280px;background:url('images/another_teaser.png') left center;background-size:cover;position:relative;}
.another_teaser::before{position:absolute;content:"";width:301px;height:314px;background:url('../mori-nenkin/images/teaser01.png') no-repeat;left:20px;bottom:-200px;}
.another_teaser::after{position:absolute;content:"";width:344px;height:328px;background:url('../mori-nenkin/images/teaser.png') no-repeat;left:30px;bottom:-120px;}
.another_teaser p{position:absolute;top:0;bottom:0;left:144px;margin:auto;display:block;width:663px;height:50px;color:#fff;font-size:3.4rem;font-weight:700;letter-spacing:0.2rem;text-align:center;}
@media screen and (max-width:767px){
	.another_teaser{height:100px;background:url('images/another_teaser.png') left -100px left no-repeat;background-size:cover;}
	.another_teaser::before{background:none;}
	.another_teaser::after{background:none;}
	.another_teaser p{left:45px;font-size:18px;letter-spacing:0;width:250px;line-height:50px;}
}

/* ヘッダーCV */
.hdr_cv{width:360px;height:auto;text-align:center;background-color:#ffffd0;box-sizing:border-box;}
.hdr_cv > p{display:inline-block;width:auto;margin:5px auto 0 auto;padding:5px;font-size:1.4rem;font-weight:600;line-height:1;border-bottom:4px dotted #fbca2b;}
.hdr_cv strong{color:#e74473;}
.hdr_cvbtn a{display:block;width:170px;height:46px;margin:0.5em auto;color:#fff !important;font-weight:600;text-align:center;text-decoration:none !important;border-radius:9999px;}
.hdr_cvbtn img{display:inline-block;width:18px;height:18px;margin-right:3px;}
.hdr_cvbtn li:nth-of-type(1) a{padding:8px 0 0 0;font-size:1.6rem !important;line-height:1;background-color:#54bf16;animation:pulse_tel 2.5s infinite ease-in-out;}
.hdr_cvbtn li:nth-of-type(1) a img{margin-left:7px;}
.hdr_cvbtn li:nth-of-type(1) a p{display:inline-block;width:auto;margin:0 auto;padding:0;text-align:center;transform:scale(0.9, 1.2);transform-origin:bottom left;}
.hdr_cvbtn li:nth-of-type(1) span{display:inline-block;font-size:9px;font-weight:500;transform:scale(1, 1.2);transform-origin:bottom left;}
.hdr_cvbtn li:nth-of-type(2) a{display:flex;align-items:center;justify-content:center;padding:0;font-size:1.8rem;line-height:40px;background-color:#f68200;animation:pulse_mail 2.5s infinite ease-in-out;animation-delay:1.25s;}

/* FV直下バナー */
.difficultyBnr{position:relative;width:95%;max-width:1040px;margin:0 auto;}
.difficultyBnr img{width:100%;height:auto;box-shadow:6px 6px 12px rgba(0,0,0,0.4);}
.difficultyBnr::after{content:'';position:absolute;top:50%;right:3.5em;width:0;height:0;border-top:20px solid transparent;border-bottom:20px solid transparent;border-left:30px solid #fff;animation:nextArrow 1s infinite ease-in-out;}
@keyframes nextArrow {
	0%,100%{transform:translate(0,-50%);}
	50%{transform:translate(10px,-50%);}
}

/* サポート実績 */
.track_record .inner{padding:50px 0;}
.track_record dl{display:table;width:280px;height:70px;margin:0.5rem 1rem;padding:0;font-weight:600;line-height:1.2;}
.track_record small{font-size:1.2rem;font-weight:400;}
.track_record dt{display:table-cell;width:50%;color:#fff;font-size:1.6rem;text-align:center;vertical-align:middle;}
.track_record dl:nth-of-type(odd) dt{background-color:#2eb4e0;}
.track_record dl:nth-of-type(even) dt{background-color:#8dd464;}
.track_record dd{display:table-cell;padding-left:2.8rem;font-size:2rem;text-align:left;vertical-align:middle;border-width:3px;border-style:solid;box-sizing:border-box;}
.track_record dl:nth-of-type(odd) dd{border-color:#2eb4e0;}
.track_record dl:nth-of-type(even) dd{border-color:#8dd464;}

/* TOPコンテンツ */
.top_area{padding:var(--size50-100) 0;text-align:center;}
.top_area p,.cv_area p,.top_srvc p{margin:1rem auto;}
.relief{width:100%;max-width:790px;margin:30px auto;padding:20px;text-align:center;border-radius:30px;background-color:#ffffd0;}
.relief h3{display:block !important;font-size:2.8rem;font-weight:600;}
.relief img{width:100%;max-width:160px;height:auto;margin:1rem auto;}

/* CVエリア */
.cv_area{position:relative;width:100%;padding:80px 0;text-align:center;background-color:#ccecb9;}
.cv_area::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:160px;height:80px;background-color:#fff;clip-path:polygon(0 0, 100% 0, 50% 100%);}
.cv_area .inner{position:relative;margin:0 auto;padding:30px;background-color:#fff;border-radius:30px;z-index:1;}
.cv_area .inner h2{position:relative;margin:0 0 1em 0;padding:10px 20px;font-size:2.8rem;font-weight:600;text-shadow:2px 0px #fff, 0px 2px #fff, -2px 0px #fff, 0px -2px #fff;background-color:#ffffbb;z-index:1;}
.cv_area .inner h2 .free{display:inline-block;margin:0 10px 0 0;padding:0 10px;color:#fff;text-shadow:none;background-color:#e74473;}
.cv_area .inner > img{max-width:180px !important;}
.cvbtn{display:block;width:360px;height:80px;margin:0.5em;color:#fff !important;font-weight:600;font-size:30px;text-align:center;text-decoration:none !important;border-radius:9999px;}
.cvbtn img{width:30px;height:30px;}
.cvbtn.tel{padding:12px 0 0 0;line-height:1;background-color:#54bf16;animation:pulse_tel 2.5s infinite ease-in-out;}
.cvbtn.tel span{font-size:18px;font-weight:500;}
.cvbtn.mail{display:flex;align-items:center;justify-content:center;gap:10px;padding:0;line-height:70px;background-color:#f68200;animation:pulse_mail 2.5s infinite ease-in-out;animation-delay:1.25s;}

/* 受給事例 */
.case_list h2{text-align:left;}
.case_list article{width:100%;max-width:252px;height:auto;margin:2rem auto;padding:20px;border:1px solid #eee;box-sizing:border-box;}
.case_list article img{width:100%;max-width:212px;height:auto;margin:0 auto 1rem auto;}
.case_list article h3{min-height:4.8rem;text-align:left;}
.case_list article h3 a{color:#2eb4e0;font-size:1.8rem;font-weight:600;line-height:1.4;}
.case_list article div{font-size:14px;text-align:left;}
.case_list article div:nth-of-type(1){margin:1rem 0;padding:5px 0;font-size:1.6rem;background-color:#e5f5fb;font-weight:600;text-align:center;}

/* 選ばれる理由 */
.reason{padding:var(--size50-100) 0;}
.reason h2{display:block !important;font-size:2.8rem;font-weight:600;text-align:center;}
.reason ul li{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:center;gap:2rem;margin:4rem auto;}
.reason ul li img{width:190px;height:160px;}
.reason ul li div{width:calc(100% - 210px);min-width:320px;padding:1rem 0 0 0;}
.reason ul li h3{color:#008fd9;font-size:2rem;font-weight:600;text-align:left;}

/* 業務内容 */
#top_srvc{background:url('images/srvcBg.png') repeat center center !important;background-size:auto !important;text-align:left;}
ul.servise_btn li{display:flex;align-items:center;justify-content:flex-start;margin:5px auto;padding:5px;width:100%;max-width:320px;height:40px;text-align:left;background-color:#fff;border-radius:3px;}
ul.servise_btn li a{display:block;position:relative;width:100%;height:100%;font-weight:600;text-decoration:none !important;}
ul.servise_btn li a img{width:30px;height:30px;margin:0 15px 0 0;padding:0;}
ul.servise_btn li a:hover{opacity:1 !important;}
ul.servise_btn li a::before{content:'';position:absolute;left:35px;width:2px;height:30px;background-color:#d5eaf1;}
ul.servise_btn li a:hover::before{background-color:#2eb4e0;}
ul.servise_btn li a::after{content:'';width:0;height:0;margin:auto;border-style:solid;border-width:6px 0 6px 8px;border-color:transparent transparent transparent #d5eaf1;position:absolute;top:0;right:5px;bottom:0;}
ul.servise_btn li a:hover::after{border-color:transparent transparent transparent #2eb4e0;}

/* 業務報告 */
.report_list h2{text-align:left;}
.report_list ul{display:inline-block;width:100%;margin:0 auto 2rem auto;text-align:left;}
.report_list ul li{position:relative;padding-left:40px;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;margin:1rem 0;border-bottom:1px dotted #ddd;}
.report_list ul li::before{content:''; position:absolute;left:0;top:50%;transform:translateY(-50%);width:40px;height:40px;background-image:url('images/icon06.png');background-size:contain;background-repeat:no-repeat;}
.report_list ul li a{display:inline-block;width:24rem;}
@media screen and (min-width:768px){/* PC */
	.report_list ul{width:80%;}
}

/* お知らせ＆メディア掲載：リスト表示 */
.topics_list h2{text-align:left;}
.topics_list ul{display:inline-block;width:100%;margin:0 auto 2rem auto;text-align:left;}
.topics_list ul li{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;margin:1rem 0;padding-left:20px;border-bottom:1px dotted #ddd;}
.topics_list ul li::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:6px solid #b0def0;}
.topics_list .news_cal{width:16rem;}
@media screen and (min-width:768px){/* PC */
	.topics_list ul{width:80%;}
}
/* トップバナー */
.bnr_area{margin:0;}
.bnr_area ul li{margin:0.5rem auto;}

/* 事例BOXレイアウト */
.case_box{width:100%;max-width:330px;height:auto;margin:2rem auto;padding:10px;text-align:center;border:1px solid #eee;background-color:#fff;box-sizing:border-box;}
.case_box h3{margin:0 0 1rem 0;padding:5px 10px;font-size:1.8rem;background-color:#e5f5fb;font-weight:600;text-align:left;line-height:1.4;}
.case_box h3:first-line{font-size:1.4rem;font-weight:500;}
.case_box img{width:auto;margin:1em auto;}
.case_box dl.chk_list{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;width:100%;padding:0 auto 30px auto;}
.case_box dl.chk_list dt{width:8em;text-align:right;}
.case_box dl.chk_list dd{width:calc(100% - 8.5em);font-size:2em;font-weight:600;}
.case_box dl.detail{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;width:100%;padding:0 auto 30px auto;}
.case_box dl.detail dt{width:6em;font-weight:600;text-align:right;}
.case_box dl.detail dd{width:calc(100% - 6.5em);text-align:left;}
.case_box div.opinion{background-color:#f8fcf0;}
.case_box div h4{padding:10px 0;color:#54c31e;font-size:1.8rem;font-weight:600;}
.case_box p{text-align:left;}
.case_box hr{border:none;height:0;margin:15px 0;padding:0;background-color:transparent;border-bottom:4px dotted #54c31e;}
.arrow-down{display:block;width:0;height:0;margin:30px auto;border-left:18px solid transparent;border-right:18px solid transparent;border-top:24px solid #f4cf37;animation:floatArrow 1s infinite ease-in-out;}
@keyframes floatArrow {
	0%,100%{transform:translateY(0);}
	50%{transform:translateY(10px);}
}

/* 3つの安心 */
.relief3{margin:2em auto;padding:0;text-align:center;border:4px solid #ffccd5;border-radius:30px;}
.relief3 li{width:90%;margin:1em auto;padding:1em;border-radius:30px;}
.relief3 li:nth-child(1){background-color:#f8f8f8;}
.relief3 li:nth-child(2){background-color:#fffff0;border:4px solid #fedcbd;box-shadow:5px 5px 5px rgba(0,0,0,0.3);}
.relief3 h4{padding:0.5em 0;font-size:2.2rem;font-weight:600;text-align:center;background-color:#fff0f5;border-radius:30px 30px 0 0;}
.relief3 h5{display:inline-block;padding:3em 0 0 1em;font-size:2rem;font-weight:bold;}
.relief3 p{text-align:left;}
.relief3 img{width:auto;margin:1em auto;}
@media screen and (min-width:768px){/* PC */
	.relief3 li{width:46%;}
}
/* フォーム */
.form-submit{text-align:center;}
.btn-submit{background:#ee861b;color:#fff !important;font-size:18px;font-weight:600;padding:20px 40px;border:none;border-radius:30px;cursor:pointer;box-shadow:0 4px 6px rgba(0,0,0,0.1);transition:all 0.3s ease;width:100%;max-width:320px;}
.btn-submit:hover{background:#54c31e;transform:translateY(-2px);}

/* フロートCV */
.floating_wrap{position:relative;z-index:9999;}
#panel_close{display:none;}
.floating_content{position:fixed;bottom:20px;right:20px;z-index:9999;transition:transform 0.4s ease-out;}
.floating_body{width:300px;height:540px;text-align:center;box-shadow:3px 3px 3px rgba(0, 0, 0, 0.4);background:url('images/floatCV.png') no-repeat center center;}
.floating_body div{visibility:hidden;width:300px;height:410px;}
.floating_body .cvbtn{margin:-1rem 0 0 25px;transform:scale(0.7);transform-origin:top left;}
.close_btn{position:absolute;top:5px;right:5px;width:28px;height:28px;background-color:#333;color:#fff;border-radius:50%;font-size:18px;line-height:28px;text-align:center;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,0.3);user-select:none;z-index:10;}
.open_btn{position:fixed;bottom:60px;right:0;padding:12px 8px;background-color:#e74473;color:#fff;font-size:16px;font-weight:600;line-height:1.2;writing-mode:vertical-rl;border-radius:5px 0 0 5px;cursor:pointer;box-shadow:-2px 2px 6px rgba(0,0,0,0.2);z-index:9998;transition:transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);}
@media screen and (max-width:767px){/* SP */
	.floating_wrap{	display:block;}
	.floating_content{transform:translateX(calc(100% + 40px));}
	.open_btn{transform:translateX(0);}
	#panel_close:checked ~ .floating_content{transform:translateX(0);}
	#panel_close:checked ~ .open_btn{transform:translateX(100%);}
}
@media screen and (min-width:768px){/* PC */
	.floating_wrap{display:block;animation:pc_scroll_fade linear both;animation-timeline:scroll(root);animation-range:500px 700px;}
	@keyframes pc_scroll_fade{
		from{visibility:hidden;opacity:0;}
		to{visibility:visible;opacity:1;}
	}
	.floating_content{transform:translateX(0);}
	.open_btn{transform:translateX(100%);}
	#panel_close:checked ~ .floating_content{transform:translateX(calc(100% + 40px));}
	#panel_close:checked ~ .open_btn{transform:translateX(0);}
}

/* SP用下部固定ボタン */
@media screen and (max-width:767px){
	.sp_fixnav{position:fixed;width:100%;height:auto;bottom:0;left:0;z-index:4;}
	.sp_fixnav a{color:#fff;text-align:center;text-decoration:none;}
	.sp_fixnav .cv{width:calc(100% - 50px);text-align:center;background-color:#ffffd0;}
	.sp_fixnav .cv p{width:100%;margin:0;padding:3px 0;font-size:1.4rem;font-weight:600;line-height:1;}
	.sp_fixnav .cv strong{color:#e74473;}
	.sp_cvbtn{width:100%;}
	.sp_cvbtn li{width:50%;}
	.sp_cvbtn img{width:20px;height:20px;margin:0 5px 0 0;animation:bound 0.5s ease infinite alternate;}
	.sp_cvbtn li a{display:block;width:100%;height:50px;margin:0;color:#fff;font-size:1.6rem;font-weight:600;text-decoration:none;box-sizing:border-box;}
	.sp_cvbtn li:nth-child(1) a{padding:8px 0 0 0;line-height:1;background-color:#54bf16;}
	.sp_cvbtn li:nth-child(1) a span{display:inline-block;height:10px;font-size:1.1rem;font-weight:500;line-height:1;}
	.sp_cvbtn li:nth-child(2) a{display:flex;align-items:center;justify-content:center;padding:0;line-height:60px;background-color:#f68200;}
	.pagetop{display:block;width:50px;height:50px;color:#fff;font-size:1.2rem;text-align:center;line-height:1;background-color:#666;text-decoration:none;}
	.pagetop img{width:18px;margin:8px 0;}
}

/* アニメーション */
@keyframes pulse_tel{
	0%{box-shadow:0 0 0 0 rgba(52, 199, 89, 0.9);}
	70%{box-shadow:0 0 0 10px rgba(52, 199, 89, 0);}
	100%{box-shadow:0 0 0 0 rgba(52, 199, 89, 0);}
}
@keyframes pulse_mail{
	0%{box-shadow:0 0 0 0 rgba(255, 149, 0, 0.9);}
	70%{box-shadow:0 0 0 10px rgba(255, 149, 0, 0);}
	100%{box-shadow:0 0 0 0 rgba(255, 149, 0, 0);}
}
.beat{animation:beat 3s reverse infinite;}
@keyframes beat{
	0%{transform:scale(1);}
	60%{transform:scale(1);}
	70%{transform:scale(1.3);}
	80%{transform:scale(1);}
	90%{transform:scale(1.3);}
	100%{transform:scale(1);}
}
.swing{animation:swing linear 2s;animation-iteration-count:infinite;}
@keyframes swing{
	0%{transform:rotate(0deg);}
	3%{transform:rotate(5deg);}
	6%{transform:rotate(-8deg);}
	9%{transform:rotate(3deg);}
	12%{transform:rotate(-4deg);}
	15%{transform:rotate(0deg);}
	100%{transform:rotate(0deg);}
}
.bound{animation:bound 0.5s ease infinite alternate;}
@keyframes bound{
	0%{transform:translateY(0px);}
	100%{transform:translateY(-3px);}
}