/* --------------------------------

New SmaPanoクラウド プラン内容 2021

-------------------------------- */
.plan_list.w-max100{
max-width: 100%
}
.align_left{text-align: left !important}
.align_right{text-align: right !important}
.align_center{text-align: center !important}
#cloud-plan{
	color: #666;
font-feature-settings: "palt";
}
#cloud-plan ul.grid__{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-rows: 1fr;
	gap: 0px 20px;
	grid-auto-flow: row;
	box-sizing: border-box;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: baseline;
	align-items: baseline;
	}
#cloud-plan > ul > li{
	width: 100%;
	float: none;
}
#cloud-plan .plan_box:nth-of-type(1) .plan_list_sec{
border-top: 15px solid #7fa4d8;
}
#cloud-plan .plan_box:nth-of-type(2) .plan_list_sec{
border-top: 15px solid #4078c4;
/* margin-left: 20px;
margin-right: 20px; */
}
#cloud-plan .plan_box:nth-of-type(3) .plan_list_sec{
border-top: 15px solid #014bb1;
}
#cloud-plan > ul > li .plan_list_sec{
border: 1px solid #c1c1c1;
padding: 20px 10px 30px 10px;
font-size: 15px;
text-align: center;
}

#cloud-plan h5{
	display: block;
	margin: 0 auto 30px;
	padding: 0 0 10px;
	max-width: 205px;
	line-height: 1;
	color: #034db2;
	font-size: 32px;
	border-bottom: 1px solid #034db2;
}
#cloud-plan h6{
	display: block;
	margin: 40px auto 20px;
	padding: 15px;
	line-height: 1;
font-size: 16px;
font-weight: normal;
font-weight: 400;
background: #eee;
border: 1px solid #e1e1e1;
text-align: left;
border-radius: 2px;

}
#cloud-plan p{
	font-size: 20px;

	font-weight: normal;
	font-weight: 400;
line-height: 1.45;
}
#cloud-plan p.memo_tax{
	margin-top: 5px;
	text-align: right;
}
#cloud-plan p.memo_tax.pt25{
	padding-top: 25px;
}
#cloud-plan strong{
	font-weight: bold;
	font-weight: 500;
}
#cloud-plan small{
	font-size: 15px;
	font-weight: normal;
	font-weight: 400;
}
/* 料金 */
dl.plan_fee{
	width: 100%;
margin-bottom: 20px;
display: -webkit-flex;
display: flex;
-webkit-justify-content: space-around;
justify-content: space-around;
-webkit-align-items: baseline;
align-items: baseline;
}
dl.plan_fee dt{
	font-size: 27px;
	font-weight: 500;
	letter-spacing: 1px;
}
/* ¥ */
dl.plan_fee dt::first-letter{
	padding-right: 2px;
	font-size: 24px;
	font-weight: normal;
	font-weight: 400;
}
/* 月払、年払 */
dl.plan_fee dt small{
	font-size: 15px;
	font-weight: normal;
	font-weight: 400;
	letter-spacing:0;
}
/* 年間、OFF */
dl.plan_fee dd{
font-size: 16px;
font-weight: normal;
font-weight: 400;
	text-align: right;
}
dl.plan_fee dd span{
	display: inline-block;
	padding: 1px 4px;
	font-size: 15px;
		text-align: center;
	border-radius: 2px;
		border: 1px solid #777;
	}
/* 黒背景 */
dd.plan_fee_off span{
	background: #111;
	color: #fff;
}
/* 購入ボタン  */
#cloud-plan a.btn_checkout{
	display: inline-block;
	margin:20px 0 0;
	padding: 15px 0;
	width: 200px;
	color: #fff;
	font-weight: 500;
	background: #034db2;
	border: 2px solid #034db2;
	font-size: 16px;
line-height: 1;
letter-spacing: 2px;
	border-radius: 2px;
}
#cloud-plan a.btn_checkout:hover{
	color: #034db2;
background: #fff;
border: 2px solid #034db2;
}

/* ---------------
無料プラン　アコーディオン
------------------ */
.plan_accordion{
	margin: 20px auto 0;
	}
.plan_accordion *{
	font-size: 15px !important;
	}
.plan_accordion .toggle {
	display: none;
	}
.plan_accordion .option {
	position: relative;
	}
.plan_accordion .title,
.plan_accordion .content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
    transition: all 0.5s; /* 閉じる時 */
	}
.plan_accordion .title {
	padding: 0;
	display: block;
	margin: 0;
color: #044db2;
	font-weight: normal;
	}
.plan_accordion .title::after,
.plan_accordion .title::before {
	content: "";
	position: absolute;
	right: 1em;
	top: 0.5em;
	width: 2px;
	height: 0.75em;
	background-color: #044db2;
	}
.plan_accordion .title::after {
	transform: rotate(90deg);
	}
.plan_accordion .content {
	margin: 0;
	padding: 0;
	max-height: 0;
	overflow: hidden;
	}
.plan_accordion .content p{
	margin: 0;
	padding: 10px 0;
	}
.plan_accordion .toggle:checked + .title + .content {
	max-height: 500px;
	    transition: all 1s; /* 開く時 */

	}
.plan_accordion .toggle:checked + .title::before {
	transform: rotate(90deg) !important;
	}
/* 無料プラン  */
.plan_accordion > a{
	color: #044db2;
}
.plan_accordion > a em{
font-size: 13px !important;
    border-radius: 2px;
    border: 1px solid #044db2;
    padding: 2px 4px;
    margin-left: 4px;
    font-weight: 600;
    font-weight: bold;
}
.plan_detail.plan_free{
		margin-top: 10px;
		padding: 0 20px;
		border: solid 1px #ccc;
}
.plan_detail.plan_free dl dt {
	min-width: 5em;
	padding-left: 0;
}
.plan_detail.plan_free dl dt:before {
	content: none;

}

/* ---------------
プラン詳細
------------------ */
.plan_detail *{
	font-size: 15px;
	font-feature-settings: "palt";
	}
	.plan_detail dl{
	width: 100%;
	position: relative;
	padding: 10px 0;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	}
/* 機能名 */
.plan_detail dl dt{
	min-width: 6em;
	padding-left: 15px;
	font-weight: bold;
	font-weight: 500;
	text-align: left;
	}
.plan_detail dl dd span{
	display: block;
	text-align: right;
	}
.plan_detail dl dt:before {
	content: '';
	position: absolute;
	left: 0;
	width: 5px;
	height: 18px;
	border-radius: 3px;
	background: #aaa;
	}
.plan_detail dl dd em{
	margin-right: 10px;
	}
.plan_detail dl dd img{
	margin-right: 5px;
	}
.plan_detail dl dd.flexbase_450em{
	flex-basis: 4.5em;
	text-align: right;
	}
.plan_detail dl dd.flexbase_350em{
	flex-basis: 3.5em;
	text-align: right;
	}
.plan_detail dl dd.flexbase_300em{
	flex-basis: 3em;
	text-align: right;
	}		

/* 2行目 */
.plan_detail dl.display-flex{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	}
.plan_detail dl.display-flex dt:before {
	display: none;
	}
.plan_detail dl.display-flex.br-pc{
	padding: 0;
}

/* ご注意事項 */
body#home .note_box > h4{
	padding-top: 20px;
	padding-left: 30px;

}
body#home .note_box ul > li{
	text-indent: -1em;
	padding-left: 1em;
	list-style-position: inside;
	list-style-type:disc;
	}

.tet_gray{color: #a0a0a0}

/* ツールチップ */
.tooltipBox{
	position: relative;
	cursor: pointer;
	display:  inline-block;
	}
.tooltipBox img{
	width: 17px;
	vertical-align: text-bottom;
	margin-left: 3px;
	}
.tooltipBox .description {
	display: none;
	position: absolute;
	padding: 14px 10px;
	font-size: 15px;
	line-height: 1.45;
	border-radius: 4px;
	background: #fbfbfb;
	width: 20em;
	border: 3px solid #96d9f4;
	text-align: left;
	z-index: 9;
	box-shadow: 4px 5px 0px 0px rgba(165, 165, 165, .2);
	}
#cloud-plan .tooltipBox .description p {
	padding-bottom: 10px;
	display: inline-block;
	font-size: 15px !important;
	line-height: 1.75 !important;
	}
#cloud-plan .tooltipBox .description img {
	width: 100%;
	height: auto;
	margin-bottom: 6px;
	}	
#cloud-plan .tooltipBox .description p strong,
#cloud-plan .tooltipBox .description a strong{
	font-weight: bold;
	}
#cloud-plan .tooltipBox .description p small{
	font-size: 13px !important;
	}

/* 吹き出し 左*/	
.tooltipBox:hover .description{
	display: inline-block;
	top: 35px;
	left: -30px;
	transform: translateX(-50%);
	-webkit- transform: translateX(-50%);	
	}
/* 矢印 中央*/		
.tooltipBox:hover:before {
	content: "";
	position: absolute;
	top: 10px;
	left: -3px;
	border: 15px solid transparent;
	border-bottom: 10px solid #96d9f4;
	}

@media screen and (min-width : 769px){
.plan_detail dl{
min-height: 40px;
}
.plan_detail dl.min_vh_1em{
min-height: 1em;
height: 2em;
padding: 5px 0 5px 0 !important;
}

#plan-pro a.btn_checkout:nth-of-type(1),
#plan-business a.btn_checkout:nth-of-type(1){
	margin:50px 0 0;
}
.dl_height_{
height: 1.8em;
min-height: 30px !important;
}
}/* end 768px */

@media screen and (max-width : 768px){
#cloud-plan ul.grid__{
display: block;
	}
#cloud-plan > ul > li:nth-of-type(2),
#cloud-plan > ul > li:nth-of-type(3){
margin-top: 40px;
}
dl.plan_fee{
-webkit-justify-content: center;
justify-content: center;
gap: 20px;
}

/* ご注意事項 */
body#home .note_box > h4{
	padding-left: 10px;
}
.note_box ul{
padding: 20px 10px;
}
/* 吹き出し*/

.tooltipBox:hover .description.adjust1{
	left:0;
	transform: translateX(-35%);
	-webkit- transform: translateX(-35%);	
	}
.tooltipBox:hover .description.adjust2{
	left:0;
	transform: translateX(-50%);
	-webkit- transform: translateX(-50%);		
	}
}/* end 768px */


@media screen and (min-width:769px) and ( max-width:1024px) {
#cloud-plan ul.grid__ {
	gap: 0px 10px;
	}
#cloud-plan > ul > li .plan_list_sec {
	padding: 20px 8px 30px 8px;
	}

dl.plan_fee{
	display: block;
}

dl.plan_fee dt {
	font-size: 22px;
	line-height: 1;
	}
dl.plan_fee dd {
	margin-top: 20px;
	display: inline-block;
text-align: center;
}
.plan_accordion > a,
.plan_detail *,
.plan_detail.plan_free > .plan_detail dl *{
	font-size: 13px !important;
	}
.plan_detail.plan_free{
	padding: 0 10px;
	}

.plan_detail dl dt {
	padding-left: 10px;
	}
.dl_height_{
line-height: 1.8em;
min-height: 30px;
}
.tooltipBox:hover .description.adjust2-tab{
	left:0;
	transform: translateX(-35%);
	-webkit- transform: translateX(-35%);		
	}
.tooltipBox .description.adjust2-tab:before {
	left: calc(50% - 30px);
	}	
}/* end 769px-1024px */

/* ---------------
機能紹介
------------------ */
/* PC　3カラム */
article.card_container {
	display: flex;
	flex-wrap: wrap;
	margin: calc(-30px / 2);
	padding: 0;
}
article.card_container .card_box {
	width: calc(100% / 3 - 29.998px);
	margin: calc(30px / 2);
	-webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 10;
}
article.card_container .card_box .card_item {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	outline: 1px solid #e1e1e1;
	font-size: 1em;
	background: #fff;
	height: 100%;
}
article.card_container .card_box .card_item .card_txt{
	padding: 1em;
}
article.card_container .card_box .card_item .card_txt h3{
	font-size: larger;
	font-weight: bold;
	padding-top: 6px;
	padding-bottom: 12px;
}
article.card_container .card_box .card_item .card_txt p{
}
article.card_container .card_box .card_item a{
	padding-bottom: 1em;
	display: block;
	text-align: right;
	padding-right: 1em;
	margin-top: auto;
}

article.card_container .card_box .card_item a span{
    display: inline-block;
    min-width: 10em;
    padding-right: 1em;
    padding-left: 1em;
    height: auto;
    line-height: 2.6em;
    text-align: center;
    border-radius: 25px;
	border: 1px solid #ccc;
	color: #044db2;
	background-color: #fff;
	transition: 0.7s;
}
article.card_container .card_box .card_item a span:hover{
	border: 1px solid #044db2;	
	background: #044db2;
	color: #fff;
}
article.card_container .card_box .card_item figure {
    margin: 0;
    height: auto;
    overflow: hidden;
	width: 100%;
    width: clamp(100%, 100%, 360px);
	border-bottom: 1px solid #e1e1e1;	
}
article.card_container .card_box .card_item figure img{
	width: 100%;
	height: auto;
	box-sizing: content-box;
	}
	
/* タブレット　2カラム */
@media screen and (max-width: 1024px) {
article.card_container .card_box{
		width: calc(100% / 2 - 30px);
	}
}
/* スマホ 1カラム*/
@media screen and (max-width: 640px) {
article.card_container .card_box {
		width: calc(100% / 1 - 30px);
	}
}


/* --------------------------------

共通

-------------------------------- */
.border_top_none{border-top: none !important}
.border_btm_none{border-bottom: none !important}
.w_max_none{max-width: unset !important}

@media screen and (min-width : 769px){
.br-pc {display: inline-block}
.br-sp {display: none}
.br-tab {display: none}
} /* end 769px */

/*スマホ版*/
@media screen and (max-width : 768px){
.br-pc {display: none}
.br-sp {display: inline-block}
.br-tab {display: none}
} /* end 768px */

@media screen and (min-width:769px) and ( max-width:1024px) {
.br-pc {display: none}
.br-sp {display: none}
.br-tab {display: inline-block}
.br-- {display: inline-block}
}/* end 769px-1024px */


