@charset "utf-8";

/*//////////////////// price common /////////////////////*/
.flowBlock02 {
    width: 100%;
    margin: 40px 0;
    background: #FFF;
    padding: 30px 5%;
    box-sizing: border-box;
}

/*///////////////////////////// plan table area /////////////////////////////*/

table.plan_t_box {
	width: 100%;
	min-width: 600px;
	max-width: 960px;
	margin: 50px auto 0;
	font-size: 14px;
	align-items: center;  
	border-radius: 6px;
    border-collapse: separate;
    overflow: hidden;
}
.plntitl {
	height: 75px;
	line-height: 1.3;
	color: #FFFFFF;
}
.plntitl th {
	font-weight: bold;
	align-content: center;
	vertical-align: middle;
    border-left: solid 1px #FFFFFF;  
}
.plntitl th:nth-child(3) {
	border-radius: 6px 0 0 0;
}
.plntitl th:last-child {
	border-radius: 0 6px 0 0;
}
.plntitl th.w15 {
	width: 16%;
}
.plntitl .blue {
	background-color: #2895c2;
}
.plntitl .bluegreen {
	background-color: #00a199;
}
.plntitl .green {
	background-color: #57c236;
}
.plntitl .red {
	background-color: #f24057;
}
.pln_name {
	height: 80px;
    font-weight: bold;
    align-content: center;
    text-align: center;
    color: #3e3a39;
	border-left: none!important;
    background-color: #f7f7f7;
}
.plan_t_box tr:nth-child(2) td.pln_name {
	border-radius: 6px 0 0 0;
}
.plan_t_box tr:nth-last-child(2) td.pln_name {
	border-radius: 0 0 0 6px;
}
.plan_t_box tr.lnkarea .pln_name {
	height: 150px;
}
.plan_t_box tr td {
	width: 5%;
    max-width: 207px;
	vertical-align: middle;
	padding: 1%;
	align-content: center;
	text-align: center;
	border-right: solid 1px #eeeeef;
	border-left: solid 1px #eeeeef;
}
tr:nth-child(2n+1) .pln_name {
    background-color: #dbdcdc;
}
tr:nth-child(2n+1) td.txt {
    background-color: #f7f7f7;
}
tr td.pln_name2 {    
	width: 8%;
    min-width: fit-content;
    padding: 1%;
    color: #3e3a39;
    font-weight: bold; 
    background-color: #eeeeef;
}
tr td.pln_name3 {
	color: #3e3a39;
	font-weight: bold;
    background-color: #f7f7f7;
}
td.txt p {
    color: #3e3a39;
    font-size: 12px;
    font-weight: bold;
    text-align: center;
    line-height: 1.2;
}
td.txt p strong {
    font-size: 14px;
}
td.pln_lnk {
	border-top: solid 1px #eeeeef;
	border-bottom: solid 1px #eeeeef;  
	border-radius: 0 0 6px 0;
}
td.pln_lnk p {
    color: #3e3a39;
    font-size: 15px;
    font-weight: bold;
    line-height: 1.2;
    text-align: center;
    margin-bottom: 2%;
}
td.pln_lnk a {
	width: 260px;
	height: 40px;
	margin: 0 auto;
	border-radius: 50px;
	background-image: linear-gradient(90deg, rgba(235, 170, 0, 1), rgba(255, 49, 99, 1));
    font-size: 15px;
    font-weight: bold;
	text-decoration: none;
	text-shadow: 1px 2px 2px rgba(0, 0, 0, 0.4);
    line-height: 1.2;
    text-align: center;
	align-content: center;
	color: #FFFFFF; 
	box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.35);
	display: block;
}
td.pln_lnk a:hover {
	background-image: linear-gradient(90deg, rgba(255, 0, 102, 1), rgba(255, 0, 102, 1));
	box-shadow: none;
}
p.n_txt {
	width: 100%;
	max-width: 960px;
	margin: 1% auto 5%;
	font-size: 12px;
	line-height: 1.5;
	color: #595757;
}
span.trngl_mark {
	width: 0;
    height: 0;
    border-style: solid;
    border-right: 23px solid transparent;
    border-left: 23px solid transparent;
    border-bottom: 40px solid #6eb9d1;
    border-top: 0;
    margin: 0 auto 15px;
    position: relative;
    display: block;
}
span.trngl_mark::before {
	content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 15px solid transparent;
    border-left: 15px solid transparent;
	border-bottom: 26px solid #f7f7f7;
    border-top: 0;
    position: absolute;
    top: 10px;
    left: -15px;
    display: block;
}
tr:nth-child(2n) td.txt span.trngl_mark::before {
	border-bottom: 26px solid #ffffff;
}
span.circle_mark {
	width: 35px;
    height: 35px;
    position: relative;
    border: solid #ff206d 5px;
    border-radius: 50%;
    box-sizing: border-box;
    display: block;
    margin: 2.5% auto 2.5%;
}
span.dcircle_mark {
	width: 30px;
    height: 30px;
    position: relative;
    border: solid #e2515d 6px;
    border-radius: 50%;
    box-sizing: border-box;
    display: block;  
	margin: 0 auto 15px;
}
span.dcircle_mark::before { 
	content: "";
    width: 30px;
    height: 30px;
    position: absolute;
    top: 10.5%;
    left: 0;
    right: 0;
    margin: 0 auto;
    border: solid #e2515d 5px;
    border-radius: 50%;
    box-sizing: border-box;
    display: block;
}
span.cross_mark {
    position: relative;
    display: block;
    width: 40px;
    height: 5px;
    background: #999999;
    transform: rotate(45deg);
    vertical-align: middle;
    margin: 24px auto 27px;
}
span.cross_mark::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #999999;
    transform: rotate(90deg);
}
/*///////////////////////////// ↑↑↑↑↑↑ plan table area ↑↑↑↑↑↑ /////////////////////////////*/

/*///////////////////////////// option /////////////////////////////*/
.opcarea {
	width: 960px;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin: 30px auto 0;
}
.opc {
    width: 23.85%;
    margin: 0 1.5% 1.5% 0;
    padding: 1.8% 1.5%;
    background: #ffffff;
    border: none;
    border-radius: 6px;
    align-content: center;
    box-sizing: border-box;
}
.opc:nth-child(4n) {
	margin-right: 0;
}
.opc .title02{  
	font-size: 20px;
	font-weight: bold;
    color: #ff0000;
    line-height: 1.15;
    text-align: center;
    vertical-align: middle;
    align-content: center;
    align-items: center;
    margin: 0 auto;
    letter-spacing: -1px;
}
.opc .title02 small {
    font-size: 65%;
}
/*///////////////////////////// ↑↑↑↑↑↑ option ↑↑↑↑↑↑ /////////////////////////////*/

/*///////////////////////////// menu /////////////////////////////*/

table.plnmenu {
	width: 100%;
	max-width: 960px;
	margin: 30px auto 1%;
	box-sizing: border-box;
	background: #FFFFFF;
	border: solid 1px #E4E4E4;
	border-radius: 6px;
    border-collapse: separate;
    overflow: hidden;
}
.plnmenu .menutitl th {
	height: 35px;
	text-align: center;
	vertical-align: middle;
	font-size: 14px;
	font-weight: bold;
	color: #FFFFFF;
	background: #f27900;
	box-sizing: border-box;
}
.plnmenu tr:nth-child(2n+1) {
	background: #fff4ea;
}
.plnmenu tr:last-child {
	background: #ffe4cc;
}
.menutitl th {
	border-left: solid 1px #FFFFFF;
}
.menutitl th:first-child {
	width: 16%;
	border-left: none;
}
.menutitl th:last-child {
	width: 16%;
	border-right: none;
	border-left: solid 1px #FFFFFF;
}
.menutitl th.titl02 {
	width: 50%;
}
.plnmenu tr td {
	font-size: 14px;  
	padding: 2% 1%;
	vertical-align: middle;
	color: #3e3a39;
	border-right: solid 1px #E4E4E4;
    border-left: solid 1px #E4E4E4;
}
.plnmenu tr:last-child td,
.plnmenu tr:nth-last-child(2) td.menu_name,
.plnmenu tr:nth-last-child(2) td.txt01 {
	border-bottom: solid 1px #E4E4E4;
}
.plnmenu tr td.txt01 {
	font-size: 13px;
	text-align: left;   
	line-height: 1.5;
}
.plnmenu tr td.txt02 {
    font-size: 15px;
    font-weight: bold;
}
.plnmenu tr td.txt01 span {
	text-decoration: underline;
}
.plnmenu tr td.txt01 span.pnk {
	color: #ff1500;
}
.plnmenu tr td.txt03 {
    font-size: 28px;
    font-weight: bold;
	text-align: center;
    color: #ff1500;
    line-height: 1.2; 
	letter-spacing: -1px;
}
.plnmenu tr td.txt03 small {
    font-size: 70%;
}

.menu_name {
	font-weight: bold;
	text-align: center;
}
/*///////////////////////////// ↑↑↑↑↑↑ menu ↑↑↑↑↑↑ /////////////////////////////*/


@media screen and (max-width: 1000px){
/*///////////////////////////// plan table area /////////////////////////////*/
.wrapBlock01 {
	width: 100%;
}
/*///////////////////////////// ↑↑↑↑↑ plan table area ↑↑↑↑↑ /////////////////////////////*/
/*///////////////////////////// option /////////////////////////////*/
.opcarea {
    width: 90%;
}
.opcarea + p.n_txt {
    width: 90%;
}
.wrapBlock01 .frameArea02.opc {
	width: 23.85%;
}
/*///////////////////////////// ↑↑↑↑↑ option ↑↑↑↑↑ /////////////////////////////*/
/*///////////////////////////// menu /////////////////////////////*/
.wrapBlock01.menuarea {
	width: 90%;
	margin: 0 auto;
}

/*///////////////////////////// ↑↑↑↑↑↑ menu ↑↑↑↑↑↑ /////////////////////////////*/
}
@media screen and (max-width: 767px) {
/*///////////////////////////// plan table area /////////////////////////////*/
.wrapBlock01 {
    width: 100%;
    margin-top: 0;
}
.wrapBlock01.plantablearea {
    overflow-x: scroll;
}
table.plan_t_box {
	margin-bottom: 4%;
    font-size: 12px;
}
.pln_name {
    width: 10%;
    height: auto;
}
table.plan_t_box  tr {
    height: 6em;
} 
td.txt p {
    font-size: 11px;
}
td.txt p strong {
    font-size: 13px;
}
p.n_txt {
	width: 95%;
	font-size: 10px;
	line-height: 1.4;
}
.flowBlock02 p.n_txt {
	width: 100%;
}
	
/*///////////////////////////// ↑↑↑↑↑ plan table area ↑↑↑↑↑ /////////////////////////////*/
	
/*///////////////////////////// option /////////////////////////////*/

.wrapBlock01 .frameArea02 {
	width: 48.5%!important;
	height: auto;
}	
.opcarea {
    width: 95%;
    flex-wrap: wrap;
	margin: 5% auto 0;
}
.opc {
	width: 48.5%!important;
	height: 17vw;
	vertical-align: middle;
	align-content: center;
	align-items: center;
	padding: 2% 5%;
	margin: 0 0 1%; 
	margin-top: 2%;
}
.opc:nth-child(2n),
.opc:nth-child(4n){	
	margin-left: 2.5%;
}
.opc p {
	vertical-align: middle;
	align-content: center;
	align-items: center;
}
.opc .title02 {
	margin-top: 0;
}

/*///////////////////////////// ↑↑↑↑↑↑ option ↑↑↑↑↑↑ /////////////////////////////*/
	
/*///////////////////////////// menu /////////////////////////////*/

.wrapBlock01.menuarea {
	width: 95%!important;
	overflow-x: scroll;
	margin: 0 auto;
}
.plnmenu {
    width: 100%!important;
    min-width: 500px;
}
.plnmenu .menutitl th {
	height: 3em;
    font-size: 12px;
    line-height: 1.2;
}
.plnmenu tr td.txt01 {
    font-size: 12px;
    line-height: 1.35;
}
.plnmenu tr td.txt02 {
    font-size: 14px;
    text-align: center;
}
.menutitl th:first-child {
    width: 25%;
    border-left: none;
}
.menutitl th.titl02 {
    width: 45%!important;
}
.menutitl th:last-child {
    min-width: 100px !important;
}
/*///////////////////////////// ↑↑↑↑↑↑ menu ↑↑↑↑↑↑ /////////////////////////////*/
}
/*/////////////// ↑↑↑↑ price common ↑↑↑↑ ////////////////*/