/*
	Theme Name:   site-sub_theme
	Template:     site-theme
*/


/*********************
 * 基本のもの
 * ******************/

.sf_pc{display:block;}
.sf_sp{display:none;}

@media(max-width:767px){
.sf_pc{display:none;}
.sf_sp{display:block;}	
}

/*********************
 * コラム
 * ******************/

.sf_mokuji {
    border: 1px solid #f5f5f5;
    margin-bottom: 60px;
}

h2.sf_mokuji_ttl {
    background: #f5f5f5;
    font-size: 19px;
    padding: 8px 15px;
    color: #0083ce;
    margin-bottom: 0;
}

.sf_mokuji_box {
    padding: 15px;
}

.sf_mokuji_box a{
    display:inline-block;
	margin-bottom:8px;
	font-weight:bold;
}

.sf_mokuji_box a.sf_child_link{
	padding:0 15px;
	font-weight:normal;
}

.sf_mokuji_box a:hover{
    text-decoration:none;
	color:#0083ce;
}

h2.sf_column_h2ttl {
    background: #f5f5f5;
    font-size: 22px;
    padding: 8px 15px;
    margin-bottom: 15px;
	border-left: 5px solid #0083ce;
}

.sf_column_txt {
    padding: 0 15px;
}

.sf_column_img {
    margin-bottom: 15px;
}

.sf_column_box {
    margin-bottom: 60px;
}

h3.sf_column_h3ttl {
    color: #0083ce;
    font-size: 20px;
    margin: 30px 0 15px;
	border-bottom: 1px solid #eee;
    padding-bottom: 8px;
}

ul.sf_column_list {
    padding: 0;
    list-style-type: none;
    margin: 0;
}

ul.sf_column_list li{
	font-weight:bold;
}

ul.sf_column_list li:before{
    content:"";
	width:6px;
	height:6px;
	display:inline-block;
	border-radius:50%;
	background: #0083ce;
    margin-right: 5px;
    margin-bottom: 2px;
}

.sf_column_list_ttl {
    color: #0083ce;
    display: inline-block;
    margin-bottom: 10px;
    font-size: 17px;
    font-weight: bold;
}

.sf_column_list_ttl:before {
    content:"\f06a";
	color:#0083ce;
	display:inline-block;
	margin-right:5px;
	font-family: "Font Awesome 5 Free";
	font-size: 20px;
}

table.sf_column_2table {
    width:100%;
	margin-bottom:15px;
}

table.sf_column_2table thead {
    background: #f5f5f5;
	text-align:center;
}

table.sf_column_2table thead th, table.sf_column_2table thead td{
    font-size:16px;
}

table.sf_column_2table tbody th {
    font-weight:normal;
	width: 40%;
}

table.sf_column_2table th, table.sf_column_2table td{
	padding:8px 10px;
	border:1px solid #eee;
	font-size:15px;
}

.sf_middle_img {
    margin-bottom: 25px;
	text-align:center;
}

.sf_middle_img.sf_margin_b0{
	margin-bottom:0;
}

.sf_middle_img .sf_pc, .sf_middle_img .sf_sp{
	margin:0 auto;
}

table.sf_ttl_table th{
	width:150px;
	background:#f5f5f5;
	text-align:center;
}

table.sf_ttl_table th, table.sf_ttl_table td{
	padding:8px 10px;
	border:1px solid #eee;
	font-size:15px;
}

.sf_colmn_firstbox {
    margin-bottom: 30px;
    background: #f5f5f5;
    padding: 15px;
}

h2.sf_colmn_firstbox_h2 {
    font-size: 22px;
    padding: 0;
    margin-bottom: 15px;
}

h2.sf_colmn_firstbox_h2:before{
	content:"\f075";
	display:inline-block;
	margin-right:5px;
	font-family: "Font Awesome 5 Free";
	font-weight: normal;
	color:#0083ce;
	transform: scale(-1,1);
}

span.bg_txt {
    display: inline;
    font-weight: bold;
    background: #f7f6da;
}

h4.sf_column_h4ttl {
    margin: 25px 0 10px;
    font-size: 17px;
    font-weight: bold;
    display: flex;
    align-items: center;
}

h4.sf_column_h4ttl:before {
    content: "";
    width: 20px;
    height: 1px;
    background: #0083ce;
    display: inline-block;
    margin-right: 8px;
}

.sf_flow_child {
    display: flex;
}

.sf_flow_num {
    color: #fff;
    font-size: 16px;
    width: 27px;
    height: 27px;
    background: #0083ce;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
}

.sf_flow_ttl {
    font-size: 17px;
    font-weight: bold;
}

.sf_flow_txt {
    width: calc(100% - 27px);
}

.sf_flow_box {
    margin: 25px 0 25px;
}

ul.sf_column_list li span {
    display: block;
    font-weight: normal;
    margin-top: 5px;
    padding: 0 10px;
}

ul.sf_column_list.sf_margin_list {
    margin-top: 25px;
	margin-bottom:25px;
}

table.sf_color_table {
    margin-bottom:15px;
}

table.sf_color_table th {
    background: #0083ce;
    color: #fff;
    font-weight: normal;
    width: 40%;
}

table.sf_color_table th, table.sf_color_table td{
   	padding:8px 10px;
	border:1px solid #eee;
	font-size:15px;
}

table.sf_table_num thead {
    background: #f5f5f5;
	text-align:center;
}

table.sf_table_num tbody th{
    background: #f5f5f5;
	text-align:center;
	width:150px;
}

table.sf_table_num th, table.sf_table_num td{
	padding:8px 10px;
	border:1px solid #eee;
	font-size:15px;
}

table.sf_table_num td{
	text-align:right;
}

table.sf_table_num{
	margin-bottom:15px;
}

table.sf_price_table thead{
    background: #0083ce;
	color:#fff;
}

table.sf_price_table{
	margin-bottom:15px;
	margin-top:15px;
}

table.sf_price_table thead tr th {
    text-align: center;
}

table.sf_price_table th, table.sf_price_table td{
	padding:8px 10px;
	border:1px solid #eee;
	font-size:15px;
}

table.sf_price_table tbody th{
	font-weight:normal;
	background:#f5f5f5;
}

table.sf_price_table tbody td{
	text-align:center;
}

.sf_small_ttl {
    font-size: 18px;
	margin-bottom:15px;
	font-weight:bold;
}

.sf_small_ttl i{
	font-family: "Font Awesome 5 Free";
	font-weight:bold;
	color:#0083ce;
	display: inline-block;
    margin-right: 8px;
}

.sf_merit_box {
    border: 1px solid #f0f9fc;
    padding: 35px 20px 20px;
    margin-top: 45px;
    position: relative;
	background:#f0f9fc;
}

.sf_merit_box.sf_demerit{
	border-color:#f5f8fc;
	background:#f5f8fc;
}

.sf_merit_meritttl {
    position: absolute;
    top: -25px;
    left: 10px;
    display: inline-block;
    background: #f0f9fc;
    font-size: 17px;
    padding: 5px 15px;
    line-height: 130%;
    border-radius: 5px 5px 0 0;
}

.sf_merit_box.sf_demerit .sf_merit_meritttl{
	background:#f5f8fc;
}

ul.sf_merit_list{
	padding:0;
	margin:0;
	list-style-type:none;
}

ul.sf_merit_list li:before{
	content:"";
	width:6px;
	height:6px;
	border-radius:50%;
	display:inline-block;
	margin-right:8px;
	background:#0083ce;
	margin-bottom: 2px;
}

.sf_merit_box.sf_demerit ul.sf_merit_list li:before{
	background:#3c2abc;	
}

table.sf_price_table.sf_feature_table tbody td {
    text-align: left;
	width:300px;
}

table.sf_price_table.sf_feature_table tbody th {
    width:150px;
}

table.sf_price_table.sf_exercise_table tbody th {
	width:200px;
}

table.sf_price_table.sf_exercise_table tbody td {
    text-align: left;
	width:400px;
}

.sf_bg_gray{
	background:#f5f5f5;
	padding:15px;
	margin-bottom:15px;
}

.sf_bg_gray p:last-of-type{
	margin-bottom:0;
}

p.sf_s_txt{
	font-size:14px;
}

ul.sf_simple_list {
    padding: 0;
    list-style-type: none;
    margin: 0;
}

ul.sf_simple_list li.sf_simple_listchild{
	display:flex;
}

ul.sf_simple_list li.sf_simple_listchild:before{
    content:"\f00c";
	font-family: "Font Awesome 5 Free";
	color:#0083ce;
	display:inline-block;
	margin-right:5px;
	font-weight:bold;
	margin-top: 2px;
}

ul.sf_simple_list.sf_column_txt {
    padding: 0 15px;
}

.sf_flow_box.sf_flow_margin_0{
	margin-top:0;
}

.sf_column_list_ttl.sf_margin_t15{
	margin-top:15px;
}

.sf_w_bord{
	font-weight:bold;
	font-size:1.7rem;
}

.sf_co_blue{
	color:#0b4e6b;
}

@media(max-width:767px){

.sf_mokuji {
    margin-bottom: 40px;
}

h2.sf_mokuji_ttl {
    font-size: 17px;
}
	
h2.sf_column_h2ttl {
    font-size: 19px;
}
	
.sf_column_box {
    margin-bottom: 40px;
}
	
h3.sf_column_h3ttl {
    font-size: 17px;
    margin: 25px 0 15px;
}
	
table.sf_column_2table th, table.sf_column_2table td {
    font-size: 13px;
}
	
table.sf_ttl_table th, table.sf_ttl_table td {
    font-size: 14px;
    display: block;
    width: 100%;
}
	
table.sf_column_2table thead th, table.sf_column_2table thead td {
    font-size: 13px;
}
	
.sf_colmn_firstbox .sf_column_txt{
	padding:0;
}
	
h2.sf_colmn_firstbox_h2 {
    font-size: 18px;
}

ul.sf_column_list.sf_margin_list {
    margin-top: 15px;
    margin-bottom: 15px;
}
	
h4.sf_column_h4ttl {
    margin: 25px 0 10px;
    font-size: 15px;
}
	
.sf_flow_num {
    font-size: 14px;
    width: 24px;
    height: 24px;
    margin-right: 8px;
}
	
.sf_flow_txt {
    width: calc(100% - 24px);
}
	
.sf_flow_ttl {
    font-size: 15px;
	margin-bottom:10px;
}
	
.sf_flow_txt p {
    line-height: 150%;
}
	
table.sf_price_table tbody th, table.sf_price_table tbody td, table.sf_color_table th, table.sf_color_table td{
    font-size:13px;
}
	
table.sf_price_table thead tr th {
    font-size: 14px;
}

table.sf_table_num, table.sf_price_table{
	width:100%;
}
	
table.sf_table_num tbody th {
    width: 90px;
    font-size: 13px;
}
	
table.sf_table_num th, table.sf_table_num td {
    font-size: 14px;
}

table.sf_color_table th {
    width: 140px;
}

.sf_small_ttl {
    font-size: 17px;
}

.sf_merit_meritttl {
    font-size: 15px;
}
	
.sf_merit_box {
    padding: 20px 20px 10px;
}
	
p.sf_s_txt {
    font-size: 12px;
}

.sf_column_list_ttl {
    font-size: 15px;
}
	
.sf_bg_gray p {
    line-height: 160%;
    font-size: 14px;
}
	
ul.sf_column_list li {
    line-height: 160%;
}

.sf_w_bord{
	font-size:16px;
}

}