@charset "utf-8";
/* CSS Document */
/*-----------------------------------------*/
/* index  -----------------------------*/
/* メイン  -----------------------------*/
.bg {
	background: url("../img/m2pm_main.jpg") no-repeat center / 100% 100%;
	/* box-shadow: 0px 11px 20px 0px rgba(0,0,0,0.2)*/
}
.main_wrap {
    overflow: hidden;
}
.pattern4 img{
    opacity: 0;
    transform: translateX(-40px);
    transition: .9s;
}
.pattern4.show img{
    opacity: 1;
    transform: translateX(0px);
}
@media (max-width: 1600px) {
.bg {
	background: url("../img/m2pm_main.jpg") no-repeat center / auto 100%;
}
}
/* index　p  -----------------------------*/
.tx_center {
	text-align: center;
}
.tx_left {
	text-align: left;
}
.tx_md {
	margin: 30px auto 40px;
	text-align: center;
}
.tx_md p, .tx_md .list_tx, .tx_md ul {
	display: inline-block;
	text-align: left;
}
.tx_md2 {
	text-align: center;
}
.tx_md2 p {
	display: inline-block;
	text-align: left;
}
.c-note--mark--bk {
	padding-left:2.5em;
	text-indent: -2.5em;
}
/* index　section01  -----------------------------*/
.u-bg {
	background: #f2f2f2;
	margin-top: 50px;
}
.yobo_te {
	text-align: center;
	line-height: 2em;
	font-size: 18px;
	margin: 50px 10px 0;
	font-weight: bold;
}
.yobo_te span {
	font-size: 22px;
	color: #dc6f06;
}
.sg-dummy_2 {
	font-size: 19px;
	padding: 5px 9px 8px;
	font-weight: bold;
}
.tx_mar_btm {
	margin-bottom: 10px;
	margin-top: 40px!important;
}
.wrap {
	margin: -20px 7% 0;
}
@media (max-width: 1024px) {
.wrap {
	margin: -20px auto 0;
}
}
@media screen and (max-width:600px) {
.yobo_te {
	line-height: 1.8em;
}
}
/* index　section02  -----------------------------*/
.l-box {
	margin: 60px auto 0 12%;
}
.icon_tx_box {
    display: flex;
    justify-content: left;
	margin-bottom: 20px;
}
.icon_mar_img {
	margin-right: 15px
}
.icon_tx_under {
	margin-top: 8px;
}
.icon_tx_under span {
	font-size: 22px;
    color: #735aa3;
    font-weight: bold;
}
.icon_tx_under span sup {
	font-size: 16px;
}
.icon_mar2 {
	text-align: center;
}
.c-text_mr {
	margin-top: 5px;
}
.img_top {
	margin: 60px 0 0;
}
@media screen and (max-width:767px) {
.l-box {
	margin: 60px 5% 0 10%;
}
.img_top {
	margin: 0;
}
}
@media screen and (max-width:425px) {
.l-box {
	margin:60px 0 0 2%;
}
}
/* index　section03  -----------------------------*/
.waku-2 {
	margin-top: 40px;
}
.waku-2 span {
	background-color: #735aa3;
    color: #fff;
    border-radius: 10px;
    padding: 5px 40px;
    margin: 10px 0;
    font-size: 18px;
    font-weight: bold;
    margin-right: 20px;
}
.c-text_sup sup {
	font-size: 15px;
	padding-right: 5px;
}
/* index　section05  -----------------------------*/
.c-table--center td, .c-table--center th {
	vertical-align: middle;
}
.tx_mar_btm2 {
	margin-top: 40px!important;
}
.wrap2 {
	margin: 30px 5% 0;
}
.wrap3 {
	margin: 0 5% 0;
}
.sg-dummy_add2 {
	font-size: 17px;
	padding: 10px 50px 20px;
}
.sg-dummy_add2 sup {
	font-size: 15px;
	padding-right: 5px;
}
.sg-dummy_add3 {
	font-size: 17px;
	padding: 10px 20px 0;
}
.waku-1 {
	margin-top: -30px;
	padding: 0 10px 15px;
}
.point .point-box2 {
	max-width: 1050px;
	width: 100%;
	margin: 20px auto 20px;
	padding-bottom: 10px;
	border: 3px solid #dc6f06;
	border-radius: 20px;
	padding: 20px 10px;
}
.point .point-box2 .point-head {
	width: 25%;
	height: 54px;
	margin: 0 auto;
	background-color: #FFF;
	transform: translateY(-50%);
}
.point .point-box2 .point-head h3 {
	margin: 4px 0 0;
	text-align: center;
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	border:solid 3px #dc6f06;
	border-radius: 20px;
	background-color: #dc6f06;
}
.button003 a {
    border-radius: 50px;
    position: relative;
    margin: 20px 0px;
    max-width: 260px;
    padding: 10px 60px;
    color: #753aa3;
    transition: 0.3s ease-in-out;
	font-size: 16px;
	font-weight: bold;
	border: solid 2px #753aa3;
}
.button003 a:hover {
    background: #753aa3;
    color: #FFF;
}
.button003 a:after {
    content: '';
    width: 8px;
    height: 8px;
    border-top: 3px solid #753aa3;
    border-right: 3px solid #753aa3;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 25px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.button003 a:hover:after {
    border-color: #FFF;
}

@media (max-width: 1024px) {
}
@media (max-width: 768px) {
.sg-dummy_add3 {
	padding: 10px 45px 30px;
}
.sg-dummy_add2 {
	padding: 10px 0px 30px;
}
.point .point-box2 .point-head h3 {
	font-size: 20px;
}
.point .point-box2 .point-head {
	width: 40%;
}
.l-tile--3col .l-tile__item {
	width: 100%;
}
}
@media (max-width: 768px) {
.bg-div2 {
    background: url("../img/m2pm_feature_05-2.png") no-repeat center top / 100% auto;
	padding-top: 62%;
	margin-top: 20px;
}
}
@media (min-width: 768px) {
.bg-div2 {
    background: url("../img/m2pm_feature_05.png") no-repeat center top / 100% auto;
	padding-top: 17%;
	margin-top: 20px;
}
}
@media (max-width: 600px) {
.wrap2 {
	margin: auto;
}
.wrap3 {
	margin: auto;
}
.sg-dummy_add3 {
	padding: 10px 5px 30px;
}
.sg-dummy_add2 {
	padding: 10px 5px 30px;
}
}
/* index　section06  -----------------------------*/
.fukidashi {
    position: relative;
    padding-bottom: 0.5rem;
    border-bottom: 3px solid #dc6f06;
    background-color: white;
    color: #dc6f06;
    font-weight: bold;
    font-size: 24px;
    text-align: center;
	margin-top: 70px;
}
.fukidashi:before {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) skew(-25deg);
    height: 20px;
    width: 10px;
    border-right: 3px solid #dc6f06;
    background-color: white;
    content: "";
}
/* index　section07  -----------------------------*/
.loss_text3-1 {
	height: 95px;
	padding: 25px 15px 0;
}
.loss_text3-1 .loss_te3 span {
	font-size: 25px;
	line-height: 1.4em;
	color:#753aa3;
	font-weight: bold;
	padding:0px 0 1px 0px;
}
@media (max-width: 1024px) {
.loss_text3-1 {
	padding: 25px 0px 0;
}
}
@media (max-width: 768px) {
.loss_text3-1 {
	padding: 15px 22px 0;
	height: auto;
}
}
@media (max-width: 600px) {
.loss_text3-1 {
	padding: 15px 22px 0;
}
}
/*-----------------------------*/
/*-----------------------------*/
/* index_2　section01  -----------------------------*/
/* 分数に関するスタイル */
span.fraction {
	display:inline-flex;
	flex-direction:column;
	vertical-align:middle;
	text-align:center;
}
span.fraction > span:nth-of-type(1) {
	padding:0 0.5em;
	border-bottom:1px solid black;
}
span.fraction > span:nth-of-type(2) {
	padding:0 0.5em;
}
/* カッコに関するスタイル */
span.fr_brackets{
	position: relative;
	margin-left: 1em;
	margin-right: 1em;
}
span.fr_brackets:before,span.fr_brackets:after{
	position: absolute;
	transform: scaleY(2); /* ← 拡大率 Webページに合わせて調整 */
	top: -0.3em;          /* ← 上端の位置調整 Webページに合わせて調整 */
}
span.fr_brackets:before{
	content: "(";
	left:-0.5em;
}
span.fr_brackets:after{
	content: ")";
	right:-0.5em;
}

