@charset "utf-8";

/*==================================================
cmn
==================================================*/

html {
font-size: 62.5%;
background: #F5F5F5;
}
body {
font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
color: #000;
font-size: 2rem;
line-height: 2em;
position: relative;
margin: 0px;
padding: 0px;
text-size-adjust: 100%;
}
header, nav, div, h1, h2, h3, h4, h5, h6, p, ol, ul, li, dl, dt, dd, img, table, tr, td, th, input, textarea, select, a, figure {
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
list-style: none;
margin: 0px;
padding: 0px;
font-weight: normal;
font-size: 100%;
}
h1, h2, h3, h4, h5, h6 {
text-align: center;
}
span.h1_black{
text-align:center;
font-size:2rem;
color:#fff;
background:#FF6E00;
display:block;
line-height:2.5em;
}
p {
margin-bottom: 1.5em;
line-height: 1.6em;
font-size:1.8rem;
}
p:last-child {
margin-bottom: 0;
}
a, input[type="submit"] {
text-decoration: none;
color: inherit;
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
outline: none;
}
img {
max-width: 100%;
height: auto;
display: inline-block;
image-rendering: auto!important;
}
a img {
transition: all ease-out 300ms;
}
a:hover img,
a:active img {
opacity: 0.8;
}
.sp {
display: none;
}

main{
margin: 0 auto;
max-width: 800px;
width: 100%;
background: #FFF;
}
.txt-center {
text-align: center;
}
.img-box{
margin: 7% 0;
}
.btn{
text-align: center;
margin: 6% 0 10%;
}
.btn:last-child{
margin-bottom: 0;
}
.content {
background: #fff;
}


@media screen and (max-width: 600px) {
	.sp {
	display: block;
	}
	.pc {
	display: none;
	}
	.site-footer address{
	font-size:10px;
	}
}/* max-width: 600px */



/* 共有アコーディオン */
.acMenu dt{
cursor:pointer;
}
.acMenu dd{
display:none;
}
.acMenu dt.active::after {
transform: rotate(540deg);
}





/*==================================================
head
==================================================*/
.site-header h1 {
background: #FFF;
text-align: center;
}
.site-header h1 span {
line-height:1em;
font-size:2rem;
letter-spacing: 0.05em;
font-weight: 600;
padding:1.2em 0 0.6em;
}
.site-header h1 img {
height:100%;
width:auto;
}
@media screen and (max-width: 600px) {
	.site-header h1 img {
	max-height:40px;
	}
}/* max-width: 600px */


/* MV */
.main-img {
position: relative;
}
.main-img .mv_point {
position: absolute;
left:0; bottom:-20px;
width: 100%;
/* height:100px; */
text-align: center;
}
@media screen and (max-width: 600px) {
	.main-img .mv_point {
	bottom:-30px;
	padding:0 2vw;
	box-sizing: border-box;
	}
}/* max-width: 600px */




/*==================================================
foot
==================================================*/
.site-footer {
text-align: center;
margin: 2em 0;
}

.site-footer address {
text-align: center;
font-style: normal;
font-size: 80%;
margin-top: 1em;
line-height: 1.2em;
}
@media screen and (max-width: 600px) {
	.site-footer ul li a {
	font-size:1.5rem;
	}
	.site-footer address {
	font-size: 70%;
	}
}/* max-width: 600px */



/*==================================================
CTA
==================================================*/
aside.ctaArea {
}
aside.ctaArea h3 {
background-color: #1cb455;
padding:4rem 5%;
}
aside.ctaArea .ctaBtn {
margin: 3rem 10% 8rem;
text-align: center;
}
@media screen and (max-width: 600px) {
	aside.ctaArea .ctaBtn {
	margin: 2rem 5% 4rem;
	}
}/* max-width: 600px */

/* アニメーション */
.cvBtnAni a img {
width: fit-content;
animation: anime1 0.5s ease 0s infinite alternate;
transform-origin:center;
}
.cvBtnAni a:hover,
.cvBtnAni a:active {
animation-play-state: paused;
}
@keyframes anime1 {
	from {
		transform: scale(0.9,0.9);
	}
	to {
		transform: scale(1,1);
	}
}



/*==================================================
content
==================================================*/
.wrap {
text-align: center;
}
@media screen and (max-width: 600px) {
	/* [class*="sec0"] h2 {
	background-color: red;
	} */
}/* max-width: 600px */



.sec01 .ctaBtn {
margin: 3rem 10% 8rem;
text-align: center;
}
.sec01 h3 {
width:96%;
margin:0 auto;
}
@media screen and (max-width: 600px) {
	.sec01 {
	border-top: #1cb455 solid 20px;
	}
	.sec01 .ctaBtn {
	margin: 2rem 5% 4rem;
	}
}/* max-width: 600px */


.sec02 {
background-color: #1cb455;
}
.sec02 h2 {
background-color: #daf2e2;
}
.sec02 ul {
padding:4rem 10% 6rem;
}
.sec02 ul li:not(:first-child) {
margin-top:3rem;
}
.sec02 ul li .wrap {
background:#FFF;
border-radius: 30px;
min-height:200px;
padding:1rem;
}
@media screen and (max-width: 600px) {
	.sec02 ul {
	padding:3rem 6% 6rem;
	}
	.sec02 ul li:not(:first-child) {
	margin-top:3rem;
	}
	.sec02 ul li .wrap {
	border-radius: 10px;
	}
}/* max-width: 600px */


.sec03 {
padding-bottom:6rem;
}
.sec03 h2 {
margin-bottom: 4rem;
}
.sec03 .wrap {
padding:2rem 10%;
text-align: left;
}
.sec03 .wrap p {
font-size: 2rem;
line-height: 1.6em;
margin:1em 0 1.5em;
}
.sec03 .wrap p span {
font-size: 120%;
font-weight:bold;
color:#1cb455;
margin:0 0.2em;
}
.sec03 h3 {
margin: 4rem 0;
}
.sec03 video {
    margin: 0 auto;
    width: 100%;
}

@media screen and (max-width: 600px) {
	.sec03 {
	padding-bottom:2rem;
	}
	.sec03 h2 {
	border-top:#fff600 solid 10px;
	margin-bottom: 2rem;
	}
	.sec03 h3 {
	margin: 2rem 0;
	}
	.sec03 .wrap p {
	font-size: 1.8rem;
	margin:1em 0 1.5em;
	}
}/* max-width: 600px */


.sec04 {
background-color:#daf2e2;
padding:4rem 0  6rem;
}
.sec04 ul {
margin:0 10% ;
}
.sec04 ul li {
background-color: #FFF;
border-radius: 30px;
overflow: hidden;
padding-bottom: 3rem;
}
.sec04 ul li:not(:first-child) {
margin-top:3rem;
}
.sec04 ul li h3 {
margin-bottom:3rem;
}
.sec04 ul li p {
font-size: 2rem;
line-height: 1.6em;
padding:0 2em;
margin-bottom: 1em;
}
@media screen and (max-width: 600px) {
	.sec04 {
	padding:2rem 0  6rem;
	}
	.sec04 h2 {
	padding:0 3%;
	}
	.sec04 ul {
	margin:0 3% ;
	}
	.sec04 ul li {
	border-radius: 10px;
	padding-bottom: 2rem;
	}
	.sec04 ul li p {
	font-size: 1.8rem;
	line-height: 1.6em;
	padding:0 1.5em;
	}
}/* max-width: 600px */








/* 事務所概要 */
.infoBox {
padding:4rem 0;
}
.infoBox h2 {
font-size:3rem;
font-weight:bold;
margin-bottom:1em;
}
.infoBox dl {
display:table;
width:90%;
margin:0 auto;
font-size:1.5rem;
line-height:1.6em;
border:#CCC solid 1px;
margin-bottom:6px;
}
.infoBox dl :is(dt,dd) {
display:table-cell;
vertical-align: middle;
padding:1.5em 1em;
}
.infoBox dl dt {
width:8em;
background:#F5F5F5;
font-weight: 600;
}

/* 弁護士 */
.infoBox .lawyer {
text-align: right;
padding:60px 0 0 30%;
position: relative;
max-width:700px;
box-sizing: border-box;
margin:1rem auto;
}
.infoBox .lawyer .img41 {
position: absolute;
max-width:430px;
left:0; top:20px;
box-shadow: 2px 2px 4px rgba(50,50,50,0.1);
}

@media screen and (max-width: 600px) {
	.infoBox h2 {
	font-size:2rem;
	}
	.infoBox .lawyer {
	padding:0 0 0 30%;
	width:100%;
	margin:1rem auto;
	overflow: hidden;
	}
	.infoBox .lawyer .img41 {
	position: absolute;
	max-width:60%;
	left:3%; top:3%;
	}
	.infoBox .lawyer .img40 {
	margin-right:-5vw;
	}
	.infoBox dl {
	display:block;
	width:90%;
	margin:0 auto;
	font-size:1.2rem;
	line-height:1.5em;
	margin-bottom:4px;
	}
	.infoBox dl :is(dt,dd) {
	display:block;
	padding:0.8em 1em;
	width: 100%;
	}
}/* max-width: 600px */



/* 固定メニュー */
#js-fixBtn {
    position: fixed;
    left: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    text-align: center;
    padding: 6px 5%;
    box-sizing: border-box;
    width: 100%;
}
#js-fixBtn a {
display:block;
width:85%;
margin:0 auto;
}
.site-footer {
padding-bottom:min(20vw, 200px);
}