@charset "utf-8";
/*------------------------------------------------------------
	financial_planning
------------------------------------------------------------*/


#main .financial_planning  h3 {
	position: relative;
  padding: 1rem 2rem;
  text-align: center;
  color: #22ac38;
  border-radius: 0 10px 10px 10px;
  background: #e3f5d8;
	margin-bottom: 2em;
}
#main .financial_planning  h3:before {
 font-size: 15px;
  font-size: 1.5rem;
  position: absolute;
  top: -24px;
  left: 0;
  height: 24px;
  padding: 0 1em;
  content: '\POINT';
  color: #fff;
  border-radius: 10px 10px 0 0;
  background: #22ac38;
}
#main .financial_planning  figure {
    margin-bottom: 21px;
}

#main .financial_planning figure img {
	display: block;
	max-width: 100%;
	height: auto;
	margin:12px auto;
}


#main .financial_planning  figure figcaption {
    margin: 0 -10px 11px;
    font-size: 1.4rem;
    line-height: 1.5;
    text-align: center;
    background-color: #fff;
}

#main .financial_planning .detail{
	padding: 16px 20px 29px;
}

#main .financial_planning .detail p{
	line-height: 1.5;
	margin-bottom:2em;
}

#main .financial_planning  span.marker-animation{
	background-image: -webkit-linear-gradient(left, transparent 50%, rgb(127,191,255) 50%);
    background-image: -moz-linear-gradient(left, transparent 50%, rgb(127,191,255) 50%);
    background-image: -ms-linear-gradient(left, transparent 50%, rgb(127,191,255) 50%);
    background-image: -o-linear-gradient(left, transparent 50%, rgb(127,191,255) 50%);
    background-image: linear-gradient(left, transparent 50%, rgb(127,191,255) 50%);
    background-repeat: repeat-x;
    background-size: 200% 0.5em;
    background-position: 0.5em;
    transition: all 2s ease;
    font-weight: bold;
}
#main .financial_planning span.marker-animation.active{
	background-position: -100% 0.8em;
}

#main .financial_planning .detail p.fp_text01{
	font-size: 1.6em;
	color: #D91A1D;
	font-weight: bolder;
}
#main .financial_planning ul.fp_ul03 {
  background: #f1f8ff;
  box-shadow: 0px 0px 0px 10px #f1f8ff;
  border: dashed 2px #668ad8;
  border-radius: 9px;
  margin: 10px;
  padding: 1em;
}

#main .financial_planning li.voice_item {
  display: flex;
  align-items: center;
  gap: 1em;
  list-style: none;
  padding: 0;
}

#main .financial_planning .voice_img {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}

#main .financial_planning .voice_text {
  flex: 1;
}

#main .financial_planning .voice_name {
  font-weight: bold;
  margin: 0 0 0.3em;
  color: #1e366a;
}

#main .financial_planning .voice_comment {
  margin: 0;
  line-height: 1.6;
  color: #333;
}



/*お問い合わせボタン*/
#main .financial_planning *,
#main .financial_planning *:before,
#main .financial_planning *:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

#main .financial_planning html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 62.5%;
}

#main .financial_planning.btn,
#main .financial_planning a.btn,
#main .financial_planning button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

#main .financial_planning .btn-wrap {
  margin: 30px auto;
	text-align: center;
}

#main .financial_planning a.btn-c {
  font-size: 2.2rem;
	position: relative;
	padding: 0.25rem 2rem 1.5rem 3.5rem;
	color: #fff;
	background: #e94919;
  -webkit-box-shadow: 0 5px 0 #d44114;
  box-shadow: 0 5px 0 #d44114;
}

#main .financial_planning a.btn-c span {
  font-size: 1.5rem;
  position: absolute;
  top: -1.25rem;
  left: calc(50% - 150px);
  display: block;
  width: 300px;
  padding: 0.2rem 0;
  color: #d44114;
  border: 2px solid #d44114;
  border-radius: 100vh;
  background: #fff;
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}

#main .financial_planning a.btn-c span:before,
#main .financial_planning a.btn-c span:after {
  position: absolute;
  left: calc(50% - 10px);
  content: "";
}

#main .financial_planning a.btn-c span:before {
  bottom: -10px;
  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: #d44114 transparent transparent transparent;
}

#main .financial_planning a.btn-c span:after {
  bottom: -7px;
  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
}

#main .financial_planning a.btn-c i {
  margin-right: 1rem;
}

#main .financial_planning a.btn-c:hover {
  -webkit-transform: translate(0, 3px);
  transform: translate(0, 3px);
  color: #fff;
  background: #eb5b30;
  -webkit-box-shadow: 0 2px 0 #d44114;
  box-shadow: 0 2px 0 #d44114;
}
/*お問い合わせボタンここまで*/



/*----------
presentページの内容を追加
-----------*/

#main .present_sec01 h2 {
    margin: 0 1px 5px;
    text-align: center;
    padding: 43px 0 46px;
    background: url(../images/present/line01.jpg) repeat-x left top, url(../images/present/line02.jpg) repeat-x left bottom #fff;
    background-size: 8px 43px, 8px 46px;
}

#main .present_sec01 h2 img {
    width: 373px;
	height: auto;
}

#main .financial_planning .present_sec01 h3{
margin:30px auto 10px;
    text-align: center;
    color: #EC7851;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.3;
	background: none;
}
#main .financial_planning .present_sec01 h3:before {
display: none;
}


#main .present_sec01 .txtBox {
	margin: 0 20px 42px;
}

#main .present_sec01 .txtBox p {
	color: #000;
	line-height: 1.64;
	letter-spacing: -0.5px;
}

#main .present_sec01 .txtBox p:not(:last-child) {
	margin-bottom: 25px;
}

#main .present_sec01 .txtBox p span {
	color: #cc0000;
}

#main .present_sec01 .txtBox p a {
	text-decoration: underline;
	color: #cc0000;
}

#main .present_sec01 .borderBox {
	margin: 0 20px;
	padding-bottom: 22px;
	border: 1px solid #FF604B;
}

#main .present_sec01 .borderBox .ttl {
	padding: 9px 22px 13px;
	margin-bottom: 16px;
	font-size: 2.4rem;
	line-height: 1.49;
	font-weight: 700;
	color: #fff;
	background-color: #F27637;
}

#main .present_sec01 .borderBox .textImg01 {
	margin: 0 10px 13px 9px;
	text-align: center;
}

#main .present_sec01 .borderBox img {
	width: 100%;
	height: auto;
}

#main .present_sec01 .borderBox .txt {
	margin: 0 15px;
	color: #000;
	font-size: 1.6rem;
	line-height: 1.55;
}

#main .present_sec01 .borderBox .txt img {
	margin: 12px -5px 2px -10px;
	display: block;
}

#main .present_sec01 .borderBox .spanTxt01 {
	margin-bottom: 2px;
	text-align: center;
	display: block;
	font-weight: 700;
	font-size: 2rem;
	color: #000;
}

#main .present_sec01 .borderBox .spanTxt02 {
	text-align: center;
	display: block;
	font-weight: 700;
	font-size: 1.9rem;
	color: #000;
	line-height: 1.3;
}

#main .present_sec01 .textBox {
	padding: 21px 20px 12px;
}

#main .present_sec01 .textBox .ttl {
	margin-bottom: 27px;
	text-align: center;
	color: #000;
	font-size: 1.9rem;
	font-weight: 700;
	line-height: 1.3;
}

#main .present_sec01 .textBox .ttl span {
	color: #cc0000;
}

#main .present_sec01 .textBox ul {
	padding: 2px 8px 15px;
	margin-bottom: 13px;
	border: 1px solid #FF604B;
}

#main .present_sec01 .textBox ul li {
	padding: 12px 0 10px;
	display: table;
	width: 100%;
	background: url("../images/common/line06.png") repeat-x left bottom;
	background-size: 9px 1px;
	box-sizing: border-box;
}

#main .present_sec01 .textBox ul li > span {
	display: table-cell;
	vertical-align: middle;
	text-align: left;
}

#main .present_sec01 .textBox ul li .icon {
	width: 27px;
}

#main .present_sec01 .textBox ul li .txt {
	padding-left: 8px;
	color: #000;
	font-size: 1.6rem;
	line-height: 1.36;
}

#main .present_sec01 .textBox .text {
	padding-bottom: 23px;
	margin-bottom: 22px;
	text-align: center;
	font-size: 1.9rem;
	font-weight: 700;
	line-height: 1.3;
	background: url("../images/present/line01.png") repeat-x left bottom;
	background-size: 5px 2px;
}

#main .present_sec01 .textBox .text span {
	margin-bottom: 7px;
	display: block;
	font-size: 2rem;
}

#main .present_sec01 .textBox .text a {
	color: #cc0000;
	text-decoration: underline;
}

#main .present_sec01 .textBox .img {
	margin: 0 -20px;
}

#main .present_sec01 .textBox .img img {
	width: 100%;
}

/*----------
precentページのbels
-----------*/
.bels {
  text-align: center;
  margin: 3rem auto;
  max-width: 1000px;
}

.bels-title {
  font-size: 1.4rem;
  font-weight: 700;
  color: #333;
  line-height: 1.6;
  margin-bottom: 2rem;
}

.bels-title strong {
  color: #d63447;
  font-size: 1.8rem;
}

.bels-wrap {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 1.5rem;
}

.bels-item {
  flex: 1;
  max-width: 280px;
}

.bels-img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

.bels-caption {
  margin-top: 0.6rem;
  font-size: 1.2rem;
  font-weight: 600;
  color: #444;
  line-height: 1.4;
}




