@charset "utf-8";



/* body
======================================================*/

html {
	font-size: 62.5%;
}
body {
	color: #333333;
	font-size: 1.6rem;
	font-family: "Yu Gothic Medium","游ゴシック Medium",YuGothic,"游ゴシック体","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro W3",Meiryo,"メイリオ",sans-serif;
}

main p {
	line-height: 2;
	margin-bottom: 1.5em;
}



/* common
======================================================*/

img {
	max-width: 100%;
	height: auto;
	backface-visibility: hidden;
}

.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

.sp {
	display: none;
}

.ofhd {
	overflow: hidden;
}

.txt_red {
	color: #ff0000;
	font-weight: bold;
}
.txt_bold {
	font-weight: bold;
}
.txt_maker {
	font-weight: bold;
	padding: 2px 0;
	background: #ffffa3;
}
.txt_center {
	text-align: center;
}

input[type="submit"] {/* iOSのボタンCSSリセット */
-webkit-appearance: none;
}



/* link
======================================================*/

a:link,
a:visited {
	color: #0095d9;
	text-decoration: underline;
}
a:hover {
	text-decoration: none;
}



/* header
======================================================*/

.header {
	width: 100%;
	height: 80px;
	background: rgba(255,255,255,0.95);
	border-bottom: 1px solid #dddddd;
	position: sticky;
	top: 0;
	left: 0;
	z-index: 100;
	transition: 0.3s;
}
.header-small {
	height: 40px;
}

.header-logo {
	position: absolute;
	top: 15px;
	left: 15px;
	transition: 0.3s;
}
.header-small .header-logo {
	top: 10px;
}

.header-logo img {
	height: 33px;
	transition: 0.3s;
}
.header-small .header-logo img {
	width: auto;
	height: 20px;
}

.header-concept {
	color: #0095d9;
	font-size: 1.1rem;
	letter-spacing: 0.03em;
	position: absolute;
	top: 55px;
	left: 15px;
}
.header-small .header-concept {
	display: none;
}



/* global nav
======================================================*/

.g-nav {
	padding-right: 15px;
	float: right;
}

.ul_g-nav {
	display: flex;
}
.ul_g-nav li {
	font-size: 1.4rem;
	font-weight: bold;
	margin-right: 20px;
}
.ul_g-nav li:last-of-type {
	margin-right: 0;
}
.ul_g-nav a {
	color: #333333;
	text-decoration: none;
	line-height: 80px;
	padding-left: 18px;
	display: block;
	transition: 0.3s;
}
.ul_g-nav a:hover {
	color: #0095d9;
	transition: 0.3s;
}
.header-small .ul_g-nav a {
	line-height: 40px;
}

.gn-home {
	display: none;
}
.gn-guide a {
	background: url(../images/gn-guide.svg) no-repeat left center;
	background-size: 14px auto;
}
.gn-hp a {
	background: url(../images/gn-hp.svg) no-repeat left center;
	background-size: 14px auto;
}
.gn-ec a {
	background: url(../images/gn-ec.svg) no-repeat left center;
	background-size: 14px auto;
}
.gn-wp a {
	padding-left: 19px;
	background: url(../images/gn-wp.svg) no-repeat left center;
	background-size: 14px auto;
}
.gn-domain a {
	background: url(../images/gn-domain.svg) no-repeat left center;
	background-size: 14px auto;
}
.gn-server a {
	background: url(../images/gn-server.svg) no-repeat left center;
	background-size: 14px auto;
}

.ul_g-nav_sp-only {
	display: none;
}



/* sp-nav button
======================================================*/

/* スマホナビ開閉ボタン Close */
.menu-open {
	display: none;
}
.nav_toggle {
	width: 22px;
	height: 19px;
	position: fixed;
	top: 15px;
	right: 15px;
	z-index: 200;
	display: none;/* ←スマホ版では削除 */
}
.nav_toggle.menu-open {
	height: 24px;
	top: 14px;
}
.nav_toggle div {
	position: relative;
}
.nav_toggle span {
	display: block;
	height: 3px;
	background: #333333;
	position:absolute;
	width: 100%;
	left: 0;
	-webkit-transition: 0.5s ease-in-out;
	-moz-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;	
}
.nav_toggle span:nth-child(1) {
	top: 0px;
}
.nav_toggle span:nth-child(2) {
	top: 8px;
}
.nav_toggle span:nth-child(3) {
	top: 16px;
}

/* スマホナビ開閉ボタン Open */
.open .nav_toggle span:nth-child(1) {
	top: 10px;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	transform: rotate(135deg);
}
.open .nav_toggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.open .nav_toggle span:nth-child(3) {
	top: 10px;
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
.nav_toggle.menu-open span {
	background: #333333;
}



/* page header
======================================================*/

.page-ttl {
	width: 100%;
	color: #ffffff;
	font-size: 2.8rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	padding: 20px;
	margin-bottom: 60px;
	background: #0095d9;
	border-radius: 5px;
}


/* breadcrumbs
======================================================*/

.breadcrumbs {
	width: 100%;
	color: #888888;
	font-size: 1.2rem;
	padding-top: 5px;
}
.breadcrumbs_inner {
	width: 1100px;
	margin: 0 auto;
}
.breadcrumbs a {
	text-decoration: none;
}
.breadcrumbs a:hover {
	text-decoration: underline;
}



/* main contents
======================================================*/

.wrapper {
	width: 100%;
}

.wrapper_inner {
	width: 1100px;
	min-height: 300px;
	padding: 30px 0 60px;
	margin: 0 auto;
	overflow: hidden;
}
.home .wrapper_inner {
	padding: 50px 0 60px;
}

.contents {
	width: 750px;
	counter-reset: rank;
	float: left;
}



/* sidebar
======================================================*/

.sidebar {
	width: 300px;
	float: right;
}

.sidebar-box {
	width: 100%;
	margin-bottom: 30px;
	border: 1px solid #0095d9;
}
.sidebar-box_ttl {
	width: 100%;
	color: #ffffff;
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
	line-height: 45px;
	background: #0095d9;
}
.sidebar-box_ttl .fas {
	margin-right: 8px;
}

.sidebar-cat_ul li {
	font-weight: bold;
	line-height: 50px;
	border-bottom: 1px solid #dddddd;
}
.sidebar-cat_ul li:last-of-type {
	border-bottom: none;
}
.sidebar-cat_ul a {
	width: 100%;
	text-decoration: none;
	padding-left: 54px;
	background-size: 24px auto;
	background-repeat: no-repeat;
	background-position: 20px center;
	display: block;
	transition: 0.3s background-color;
}
.sidebar-cat_ul a:hover {
	background-color: #D2F0FF;
	transition: 0.3s background-color;
}

.sc-hp a {
	background-image: url(../images/gn-hp.svg);
}
.sc-ec a {
	background-image: url(../images/gn-ec.svg);
}
.sc-wp a {
	background-image: url(../images/gn-wp.svg);
}
.sc-domain a {
	background-image: url(../images/gn-domain.svg);
}
.sc-server a {
	background-image: url(../images/gn-server.svg);
}

.sidebar-box_guide .sidebar-box_inner {
	padding: 9px;
}

.sidebar-profile_img {
	text-align: center;
	margin-bottom: 20px;
}
.sidebar-profile_img img {
	width: 100px;
}
.sidebar-profile_name {
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
	line-height: 1;
	margin-bottom: 40px;
	position: relative;
}
.sidebar-profile_name:after {
	content: "";
	width: 40px;
	height: 1px;
	background: #0095d9;
	display: block;
	position: absolute;
	bottom: -20px;
	left: 50%;
	margin-left: -20px;
}
.sidebar-box_profile .sidebar-box_inner {
	padding: 30px;
}
.sidebar-profile_stc {
	font-size: 1.3rem;
	line-height: 1.8;
	margin-bottom: 15px;
}
.sidebar-profile_stc:last-of-type {
	margin-bottom: 0;
}

.sidebar-profile_more {
	font-size: 1.3rem;
	text-align: center;
}
.sidebar-profile_more a {
	text-decoration: none;
	padding-left: 8px;
	background: url(../images/link-arrow_blue.svg) no-repeat left center;
	background-size: auto 8px;
}
.sidebar-profile_more a:hover {
	text-decoration: underline;
}

.sidebar-box_profile-sns {
	text-align: center;
	margin-top: 30px;
}
.sidebar-box_profile-sns li {
	margin-right: 20px;
	display: inline-block;
}
.sidebar-box_profile-sns li:last-of-type {
	margin-right: 0;
}



/* footer
======================================================*/

.footer {
	width: 100%;
	padding: 60px 0 0;
	background: #0095D9;
}

.footer-logo {
	text-align: center;
	margin-bottom: 50px;
}

.footer-nav {
	width: 1200px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
.footer-nav_col-hdg {
	color: #ffffff;
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 20px;
}
.footer-nav_col-hdg a {
	color: #ffffff;
	text-decoration: none;
}
.footer-nav_col-hdg a:hover {
	text-decoration: underline;
}
.footer-nav_ul li {
	font-size: 1.2rem;
	margin-bottom: 15px;
}
.footer-nav_ul li:last-of-type {
	margin-bottom: 0;
}

.footer-nav_ul a,
.footer-nav_ul a:visited {
	color: #ffffff;
	text-decoration: none;
}
.footer-nav_ul a:hover {
	text-decoration: underline;
}

p.copyright {
	width: 100%;
	color: #ffffff;
	font-size: 1.2rem;
	text-align: center;
	letter-spacing: 0.05em;
	line-height: 1;
	padding: 19px 0;
	margin: 60px 0 0;
	background: #007EBB;
}



/* footer CTA
======================================================*/

.cta-footer {
	width: 100%;
	padding: 5px 0;
	background: rgba(0,0,0,0.8);
	display: block;
	z-index: 10;
	position: fixed;
	bottom: -100px;
	left: 0;
	transition: 0.5s;
}
.cta-footer.show {
	bottom: 0px;
}

.cta-footer .tool_af-link_cap,
.cta-footer .tool_af-link_official {
	color: #ffffff;
	font-size: 1.4rem;
	margin-bottom: 8px;
}
.cta-footer .tool_af-link_cap span {
	padding: 0 20px;
}
.cta-footer .tool_af-link_cap span:before,
.cta-footer .tool_af-link_cap span:after {
	width: 16px;
	background-color: #ffffff;
}
.cta-footer .tool_af-link_btn a {
	line-height: 40px;
	background-position: top 9px right 15px;
}



/* page top
======================================================*/

.page-top {
	display: none;
	position: fixed;
	right: 20px;
	bottom: 16px;
	z-index: 100;
}
.page-top p {
	margin: 0;
	padding: 0;
}
.page-top p:hover {
	opacity: 0.7;
}

@charset "utf-8";



/* トップページ MV
===================================================================*/

.mv {
	width: 100%;
	height: 500px;
	padding-top: 140px;
	background: url(../images/mv.jpg) no-repeat center center;
}
.mv-catch_main {
	color: #ffffff;
	font-size: 5.0rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	margin-bottom: 40px;
}
.mv-catch_sub {
	color: #ffffff;
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
}



/* トップページ
===================================================================*/

.check-list {
	width: 100%;
	padding: 30px 50px;
	border: 2px solid #DDDDDD;
}
.check-list_ttl {
	color: #0094D8;
	font-size: 2.6rem;
	text-align: center;
	margin-bottom: 40px;
}
.check-list_ttl > span {
	font-weight: bold;
	background: linear-gradient(transparent 70%, #DBF3FF 70%);
}
.check-list_ttl > span > span {
	color: #FF4626;
	font-weight: bold;
}
.check-list_ul li {
	height: 30px;
	font-size: 2.3rem;
	padding: 4px 0 0 45px;
	margin-bottom: 20px;
	background: url(../images/icn_check.svg) no-repeat left center;
	background-size: 30px 30px;
}
.check-list_ul li:last-of-type {
	margin-bottom: 0;
}

.top_category-list_ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.top_category-list_ul li {
	width: 360px;
	padding: 18px;
	margin-top: 30px;
	border: 2px solid #C6ECFF;
}
.top_category-list_ul li:nth-of-type(1) ,
.top_category-list_ul li:nth-of-type(2) {
	margin-top: 0;
}
.top_category-list_eye {
	margin-bottom: 20px;
}
.top_category-list_ttl {
	font-size: 2.0rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: 10px;
}
.top_category-list_ttl a {
	color: #0095d9;
	text-decoration: none;
}
.top_category-list_stc {
	font-size: 1.3rem;
	line-height: 1.5;
	margin-bottom: 20px;
}
.top_category-list_more {
	margin-bottom: 0;
}
.top_category-list_more a {
	width: 100%;
	color: #ffffff;
	font-size: 1.3rem;
	text-align: center;
	text-decoration: none;
	line-height: 30px;
	background-color: #0095D9;
	background-image: url(../images/link-arrow.svg);
	background-size: auto 10px;
	background-repeat: no-repeat;
	background-position: center right 10px;
	border-radius: 5px;
	display: block;
	transition: 0.4s background-color;
}
.top_category-list_more a:hover {
	background-color: #FF4726;
	transition: 0.4s background-color;
}

.top_tool-list_ul {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.top_tool-list_ul li {
	width: 360px;
	padding: 18px;
	margin-top: 30px;
	border: 2px solid #EBEBEB;
	position: relative;
}
.top_tool-list_ul li:nth-of-type(1) ,
.top_tool-list_ul li:nth-of-type(2) {
	margin-top: 0;
}
.top_tool-list_logo {
	min-height: 70px;
	text-align: center;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #EBEBEB;
}
.top_tool-list_logo img {
	width: auto;
	max-height: 50px;
}
.top_tool-list_ttl {
	font-size: 2.0rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: 12px;
}
.top_tool-list_ttl a {
	color: #0095d9;
	text-decoration: none;
}
.top_tool-list_catchcopy {
	font-size: 1.3rem;
	line-height: 1.5;
}
.top_tool-list_more {
	margin-bottom: 20px;
}
.top_tool-list_more a {
	width: 100%;
	color: #ffffff;
	font-size: 1.3rem;
	text-align: center;
	text-decoration: none;
	line-height: 30px;
	background-color: #0095D9;
	background-image: url(../images/link-arrow.svg);
	background-size: auto 10px;
	background-repeat: no-repeat;
	background-position: center right 10px;
	border-radius: 5px;
	display: block;
	transition: 0.4s background-color;
}
.top_tool-list_more a:hover {
	background-color: #FF4726;
	transition: 0.4s background-color;
}

.top_tool-list_ul .tool_af-link_cap {
	color: #FF4726;
	font-size: 1.2rem;
	text-align: center;
	line-height: 1;
	margin-bottom: 6px;
}
.top_tool-list_ul .tool_af-link_cap span {
	padding: 0 20px;
	position: relative;
}
.top_tool-list_ul .tool_af-link_cap span:before,
.top_tool-list_ul .tool_af-link_cap span:after {
	content: '';
	width: 14px;
	height: 1px;
	position: absolute;
	top: 50%;
	display: inline-block;
	background-color: #FF4726;
}
.top_tool-list_ul .tool_af-link_cap span:before {
	left:0;
	transform: rotate(60deg);
}
.top_tool-list_ul .tool_af-link_cap span:after {
	right: 0;
	transform: rotate(-60deg);
}
.top_tool-list_ul .tool_af-link_btn a {
	width: 100%;
	color: #ffffff;
	font-size: 1.6rem;
	text-align: center;
	text-decoration: none;
	line-height: 30px;
	padding: 0 20px;
	margin: 0 auto;
	background-color: #FF4726;
	background-image: url(../images/link-external_white.svg);
	background-size: auto 14px;
	background-repeat: no-repeat;
	background-position: top 8px right 10px;
	border-radius: 5px;
	display: block;
	transition: 0.4s background-color;
}
.top_tool-list_ul .tool_af-link_btn a:hover {
	background-color: #0095d9;
	transition: 0.4s background-color;
}
.top_tool-list_ul .tool_af-link_btn img {
	display: none;
}

.dl_tool-info {
	width: 100%;
	padding: 20px;
	border: 1px solid #dddddd;
}
.dl_tool-info dt {
	color: #888888;
	font-size: 1.2rem;
	letter-spacing: 0.1em;
	margin-bottom: 5px;
}
.dl_tool-info dd {
	padding-bottom: 25px;
	margin-bottom: 25px;
	border-bottom: 1px solid #dddddd;
}
.dl_tool-info dd:last-of-type {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: none;
}
.tool-info_ttl {
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 5px;
}
.tool-info_stc {
	font-size: 1.2rem;
	margin-bottom: 12px;
}
.tool-info_stc p {
	margin-bottom: 0;
}
.ul_tool-info_link {
	font-size: 1.3rem;
	display: flex;
}
.tool-info_link_ad {
	padding-left: 20px;
	margin-right: 30px;
	background: url(../images/link-external_blue.svg) no-repeat 0 1px;
	background-size: auto 11px;
}
.tool-info_link_related {
	padding-left: 10px;
	background: url(../images/link-arrow_blue.svg) no-repeat 0 center;
	background-size: auto 8px;
}



/* HP自作コラム
======================================================*/

/* 一覧ページ */
.column_cat-name {
	color: #0095d9;
	font-size: 2.6rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
}

.column-list_ul {
	display: flex;
	flex-wrap: wrap;
}
.column-list_ul li {
	width: 375px;
	padding: 15px;
	border-bottom: 1px solid #dddddd;
	overflow: hidden;
}
.column-list_ul li:nth-of-type(2n-1) {
	border-left: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
}
.column-list_ul li:nth-of-type(2n) {
	border-right: 1px solid #dddddd;
}
.column-list_ul li:nth-of-type(1),
.column-list_ul li:nth-of-type(2) {
	border-top: 1px solid #dddddd;
}

.column-list_ec {
	margin-bottom: 18px;
}
.column-list_date {
	color: #aaaaaa;
	font-size: 1.3rem;
	letter-spacing: 0.1em;
	line-height: 1;
	margin-bottom: 10px;
	display: block;
}
.column-list_date-published {
	padding-left: 18px;
	background: url(../images/icn_release.svg) no-repeat left 1px;
	background-size: auto 13px;
}
.column-list_date-modified {
	padding-left: 18px;
	background: url(../images/icn_update.svg) no-repeat left 1px;
	background-size: auto 13px;
}
.column-list_ttl {
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 0;
}
.column-list_ttl a {
	color: #333333;
	text-decoration: none;
	transition: 0.3s;
}
.column-list_ttl a:hover {
	color: #0095d9;
	transition: 0.3s;
}


/* 詳細ページ */
.article-detail_ttl {
	width: 100%;
	color: #ffffff;
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.5;
	padding: 40px 20px 10px;
	margin-bottom: 20px;
	background: #0095d9;
	position: relative;
	overflow: hidden;
}
.article-detail_ttl span {
	width: 100%;
	color: #ffffff;
	font-size: 1.4rem;
	font-weight: bold;
	text-align: center;
	line-height: 30px;
	background: #0074AC;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
.category .article-detail_ttl,
.single-post .article-detail_ttl,
.single-tool .article-detail_ttl,
.post-type-archive-column .article-detail_ttl,
.single-column .article-detail_ttl,
.tax-column_cat .article-detail_ttl {
	text-align: center;
}

.ad-date {
	width: 100%;
	margin-bottom: 15px;
	display: flex;
	align-items: center;
}

.ad-notation {
	color: #888888;
	font-size: 1.6rem;
	text-align: center;
	line-height: 18px;
	padding: 0 4px;
	margin: 0 10px 0 0;
	border: 1px solid #eeeeee;
}

.article-detail_cat {
	color: #888888;
	font-size: 1.2rem;
	text-align: center;
	line-height: 18px;
	padding: 0 4px;
	margin: 0 10px 0 0;
	border: 1px solid #eeeeee;
}

.article-detail_date {
	color: #888888;
	font-size: 1.2rem;
	margin: 0;
}

.article-detail_ec {
	text-align: center;
	margin-bottom: 60px;
}


/* サイドバー */
.column_side_cat {
	padding: 19px 14px;
}
.column_side_cat li {
	margin-bottom: 20px;
}
.column_side_cat li:last-of-type {
	margin-bottom: 0;
}



/* ツール（一覧） - 共通
======================================================*/

.in-ranking {
	margin: 80px 0 0;
}
.in-ranking a {
	width: 100%;
	height: 60px;
	color: #ffffff;
	font-size: 2.2rem;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	line-height: 61px;
	background-color: #ffa500;
	background-image: url(../images/icn_crown-white.svg),url(../images/icn_up-arrow.svg);
	background-repeat: no-repeat,no-repeat;
	background-size: auto 24px,auto 20px;
	background-position: left 20px center,right 20px center;
	border-radius: 10px;
	display: block;
	transition: 0.3s;
}
.in-ranking a:hover {
	background-position: left 20px center,right 20px top 15px;
	opacity: 0.7;
	transition: 0.3s;
}

.service-ranking_ttl {
	color: #0095d9;
	font-size: 3.5rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	padding: 90px 0 0;
	margin: 60px 0 20px;
	background: url(../images/icn_crown-orange.svg) no-repeat center top;
	background-size: auto 75px;
}
.service-ranking_ttl span {
	font-weight: bold;
	background: linear-gradient(transparent 70%, #DBF3FF 70%);
}

.tbl_evaluation-list {
	width: 100%;
	margin: 40px 0 60px;
}
.tbl_evaluation-list th {
	width: 30%;
	font-size: 1.3rem;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px 5px;
	border: 1px solid #cccccc;
	border-right: 3px double #cccccc;
}
.tbl_evaluation-list th .num {
	width: 20px;
	height: 20px;
	color: #ffffff;
	font-weight: bold;
	text-align: center;
	line-height: 21px;
	margin-right: 10px;
	background: #0095d9;
	border-radius: 10px;
	display: inline-block;
}
.tbl_evaluation-list th a {
	text-decoration: none;
}
.tbl_evaluation-list th a:hover {
	text-decoration: underline;
}
.tbl_evaluation-list td {
	width: 14%;
	text-align: center;
	letter-spacing: 0.1em;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px 0;
	border: 1px solid #cccccc;
}
.tbl_evaluation-list td:first-of-type {
	color: #FF4726;
	font-weight: bold;
}
.tbl_evaluation-list thead th,
.tbl_evaluation-list thead td {
	color: #0095d9;
	font-size: 1.3rem;
	font-weight: bold;
	letter-spacing: normal;
}
.tbl_evaluation-list thead td {
	background: #E3F7FF;
}
.tbl_evaluation-list thead td:first-of-type {
	background: #FFF1EE;
}

.atc-tool {
	width: 100%;
	margin-bottom: 80px;
}
.atc-tool:last-of-type {
	margin-bottom: 0;
}

.atc-tool_ttl {
	width: 100%;
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.5;
	padding: 10px 15px;
	margin-bottom: 25px;
	background: #EAF9FF;
	border-top: 3px solid #0095d9;
}
.atc-tool_ttl:before {
	counter-increment: rank;
	content: counter(rank) "位";
	color: #0095d9;
	letter-spacing: 0.1em;
	margin-right: 20px;
}

.dl_evaluation {
	width: 100%;
	padding: 15px;
	margin-bottom: 30px;
	border: 1px solid #dddddd;
	display: flex;
	align-items: center;
}
.dl_evaluation dt {
	font-size: 1.2rem;
	line-height: 1.1;
	padding: 0 0 0 11px;
	margin: 0 5px 0 10px;
	position: relative;
}
.dl_evaluation dt:after {
	content: "";
	width: 1px;
	height: 20px;
	background: #cccccc;
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -11px;
}
.dl_evaluation dd {
	color: #FF4726;
	font-size: 1.3rem;
	font-weight: bold;
	letter-spacing: 0.05em;
}
.dl_evaluation dt:first-of-type {
	font-size: 1.5rem;
	font-weight: bold;
	padding: 0;
	margin: 0 5px 0 0;
}
.dl_evaluation dt:first-of-type:after {
	content: none;
}
.dl_evaluation dd:first-of-type {
	font-size: 2.2rem;
}
.perfect-score {
	font-size: 1.4rem;
	font-weight: bold;
	margin-left: 3px;
}

.atc-tool_header {
	width: 100%;
	margin-bottom: 40px;
	overflow: hidden;
}
.atc-tool_logo {
	margin: 0;
	float: left;
}
.atc-tool_logo img {
	width: auto;
	max-width: 380px;
	max-height: 60px;
}
a.atc-tool_more {
	width: 350px;
	color: #ffffff;
	text-align: center;
	text-decoration: none;
	line-height: 1.4;
	padding: 8px 0;
	background-color: #0095D9;
	background-image: url(../images/link-arrow.svg);
	background-size: auto 16px;
	background-repeat: no-repeat;
	background-position: center right 10px;
	border-radius: 10px;
	display: block;
	float: right;
	transition: 0.4s background-color;
}
a.atc-tool_more:hover {
	background-color: #FF4726;
	transition: 0.4s background-color;
}
a.atc-tool_more_bottom {
	margin: 40px auto 0;
	float: none;
}

.atc-tool_captcha {
	border: 1px solid #dddddd;
}
.captcha-source {
	color: #cccccc;
	font-size: 1.1rem;
	text-align: center;
	margin-bottom: 30px;
}
.captcha-source a {
	color: #cccccc;
	text-decoration: none;
	font-style: normal;
	cursor: default;
}

.atc-tool_summary {
	width: 100%;
	margin-bottom: 40px;
}
.atc-tool_summary th {
	width: 25%;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.1em;
	vertical-align: middle;
	padding: 15px 0;
	background: #f5f5f5;
	border: 1px solid #cccccc;
}
.atc-tool_summary td {
	width: 75%;
	font-size: 1.4rem;
	line-height: 1.8;
	vertical-align: middle;
	padding: 15px;
	border: 1px solid #cccccc;
}
.atc-tool_summary td p {
	margin-bottom: 15px;
}
.atc-tool_summary td p:last-of-type {
	margin-bottom: 0;
}

.atc-tool_catch {
	color: #0095d9;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.5;
}
.atc-tool_introduction {
	margin-top: 20px;
}

.atc-tool_feature-list {
	padding: 30px 40px;
	margin-top: 30px;
	border: 3px solid #eeeeee;
}
.atc-tool_feature-ttl {
	color: #0094D8;
	font-size: 2.4rem;
	text-align: center;
	margin-bottom: 25px;
}
.atc-tool_feature-ttl > span {
	font-weight: bold;
	background: linear-gradient(transparent 70%, #FFE6E1 70%);
}
.atc-tool_feature-list li {
	font-size: 1.8rem;
	line-height: 1.5;
	padding: 2px 0 0 30px;
	margin-bottom: 8px;
	background: url(../images/icn_check.svg) no-repeat left 5px;
	background-size: 20px 20px;
}
.atc-tool_feature-list li:last-of-type {
	margin-bottom: 0;
}

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

.tool_af-link {
	margin-top: 60px;
}
.tool_af-link_cap {
	color: #FF4726;
	font-size: 1.8rem;
	text-align: center;
	line-height: 1;
	margin-bottom: 12px;
}
.tool_af-link_cap span {
	padding: 0 25px;
	position: relative;
}
.tool_af-link_cap span:before,
.tool_af-link_cap span:after {
	content: '';
	width: 20px;
	height: 1px;
	position: absolute;
	top: 50%;
	display: inline-block;
	background-color: #FF4726;
}
.tool_af-link_cap span:before {
	left:0;
	transform: rotate(60deg);
}
.tool_af-link_cap span:after {
	right: 0;
	transform: rotate(-60deg);
}
.tool_af-link_btn a {
	width: 500px;
	color: #ffffff;
	font-size: 2.0rem;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	line-height: 50px;
	padding: 0 20px;
	margin: 0 auto;
	background-color: #FF4726;
	background-image: url(../images/link-external_white.svg);
	background-size: 23px 20px;
	background-repeat: no-repeat;
	background-position: top 14px right 15px;
	border-radius: 10px;
	display: block;
	transition: 0.4s background-color;
}
.tool_af-link_btn a:hover {
	background-color: #0095d9;
	transition: 0.4s background-color;
}
.tool_af-link_btn img {
	display: none;
}

.tool_af-link_official {
	color: #FF4726;
	font-size: 1.3rem;
	text-align: center;
	letter-spacing: 0.05em;
	line-height: 1;
	margin: 8px 0 0;
}
.tool_af-link_official span {
	font-weight: bold;
	padding: 0 12px;
	position: relative;
}
.tool_af-link_official span:before,
.tool_af-link_official span:after {
	content: '';
	width: 5px;
	height: 1px;
	position: absolute;
	top: 50%;
	display: inline-block;
	background-color: #FF4726;
}
.tool_af-link_official span:before {
	left:0;
}
.tool_af-link_official span:after {
	right: 0;
}



/* ツール（詳細） - 共通
======================================================*/

.tool-detail_ttl {
	color: #0095d9;
	font-size: 2.8rem;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 30px;
}
.tool-detail_logo {
	text-align: center;
	margin-bottom: 20px;
}
.tool-detail_logo img {
	width: auto;
	max-width: 400px;
	max-height: 80px;
}
.tool-detail_captcha {
	border: 1px solid #dddddd;
}

.atc-detail_ctt {
	margin-top: 50px;
}

.sec_same-cat_list {
	width: 100%;
	margin-top: 80px;
}
.sec_same-cat_ttl {
	width: 100%;
	color: #ffffff;
	font-size: 2.2rem;
	font-weight: bold;
	text-align: center;
	line-height: 45px;
	margin-bottom: 25px;
	background: #0095d9;
}
.same-cat_list {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.same-cat_list:after {
	content: "";
	display: block;
	width: 31%;
}
.same-cat_list li {
	width: 31%;
	margin-top: 20px;
}
.same-cat_list li:nth-of-type(1),
.same-cat_list li:nth-of-type(2),
.same-cat_list li:nth-of-type(3) {
	margin-top: 0;
}
.same-cat_list_eye {
	margin-bottom: 8px;
}
.same-cat_list_ttl {
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.4;
	margin: 0;
}
.same-cat_list_ttl a {
	color: #333333;
	text-decoration: none;
}
.same-cat_list_ttl a:hover {
	text-decoration: underline;
}
.same-cat_list_not {
	line-height: 1.4;
	margin: 0;
}

.sec_same-cat_ranking {
	width: 100%;
	margin-top: 80px;
	border: 1px solid #0095d9;
}
.sec_same-cat_ranking_ttl {
	width: 100%;
	color: #ffffff;
	font-size: 2.2rem;
	font-weight: bold;
	text-align: center;
	line-height: 45px;
	margin-bottom: 30px;
	background: #0095d9;
}
.sec_same-cat_ranking_ttl-sub {
	color: #0095d9;
	font-size: 2.2rem;
	font-weight: bold;
	text-align: center;
	line-height: 1;
	margin-bottom: 30px;
	position: relative;
}
.sec_same-cat_ranking_ttl-sub a {
	text-decoration: none;
	padding: 0 15px;
	position: relative;
}
.sec_same-cat_ranking_ttl-sub a:before,
.sec_same-cat_ranking_ttl-sub a:after { 
	position: absolute;
	top: 0;
	content:'';
	width: 6px;
	height: 100%;
	display: inline-block;
}
.sec_same-cat_ranking_ttl-sub a:before {
	border-left: solid 1px #0095d9;
	border-top: solid 1px #0095d9;
	border-bottom: solid 1px #0095d9;
	left: 0;
}
.sec_same-cat_ranking_ttl-sub a:after {
	content: '';
	border-top: solid 1px #0095d9;
	border-right: solid 1px #0095d9;
	border-bottom: solid 1px #0095d9;
	right: 0;
}
.same-cat_ranking {
	width: 100%;
	padding: 0 30px 30px;
	counter-reset: rank;
}
.same-cat_ranking li {
	width: 100%;
	border-bottom: 1px solid #dddddd;
}
.same-cat_ranking a:before {
	counter-increment: rank;
	content: counter(rank);
	color: #0095d9;
	font-size: 3.0rem;
	font-weight: bold;
	letter-spacing: 0.1em;
	margin-right: 30px;
	float: left;
}
.same-cat_ranking a {
	width: 100%;
	text-decoration: none;
	padding: 20px;
	background: url(../images/link-arrow_blue.svg) no-repeat right 5px center;
	background-size: auto 16px;
	display: block;
	overflow: hidden;
	transition: 0.3s;
}
.same-cat_ranking a:hover {
	background: #D2F0FF url(../images/link-arrow_blue.svg) no-repeat right 0px center;
	background-size: auto 20px;
	transition: 0.3s;
}
.same-cat_ranking_logo {
	width: auto;
	max-width: 260px;
	max-height: 30px;
	float: left;
}
.same-cat_ranking_ttl {
	width: 50%;
	color: #333333;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 30px;
	margin-bottom: 0;
	float: right;
}



/* キャンペーン情報
======================================================*/

.campaign-box {
	width: 100%;
	padding: 20px;
	margin: 0 0 40px;
	background: #FFFAF9;
	border: 1px solid #FF4726;
	border-radius: 5px;
}
.campaign-box p {
	margin-bottom: 1em;
}
.campaign-box p:last-of-type {
	margin: 0;
}



/* リード文
======================================================*/

.balloon.lead-hana {
	margin: 40px 0;
}
.balloon.lead-hana .balloon_icn {
	margin-right: -70px;
	float: left;
}
.balloon.lead-hana .balloon_says {
	background: #FFEDEA;
	margin: 10px 95px 0 95px;
}
.balloon.lead-hana .balloon_says:after {
	border-right: 17px solid #FFEDEA;
	left: -27px;
}
.balloon.lead-hana .balloon_says p,
.balloon.lead-ryu .balloon_says p {
	font-size: 1.6rem;
	line-height: 2;
}

p.lead_contents-ttl {
	max-width: 100%;
	color: #ffffff;
	text-align: center;
	line-height: 1;
	padding: 12px 20px;
	margin: 40px 0 0;
	background: #0095d9;
	border-radius: 3px;
	display: inline-block;
	position: relative;
}
.lead_contents-ttl:before {
	content: "";
	margin-left: -10px;
	border: 10px solid transparent;
	border-top: 12px solid #0095d9;
	position: absolute;
	top: 100%;
	left: 30px;
}



/* 目次（メインコンテンツ）
======================================================*/

#toc_container {
	width: 100% !important;
	font-size: 1.6rem;
	text-align: center;
	padding: 25px 40px !important;
	margin: 60px auto 0;
	border: 1px solid #0095d9 !important;
}
.toc_title {
	font-size: 2.3rem !important;
	line-height: 1 !important;
	padding-left: 32px !important;
	margin-bottom: 20px !important;
	background: url(../images/icn_toc.png) no-repeat left top 1px;
	display: inline-block;
}
#toc_container.no_bullets ul {
	border: none;
	text-align: left;
}
#toc_container li:before {
	content: none;
}
.toc_list > li {
	font-weight: bold;
	line-height: 1 !important;
	margin-bottom: 20px !important;
}
.toc_list > li:last-of-type {
	margin-bottom: 0 !important;
}
.toc_list > li:before {
	content: none !important;
}
.toc_list > li .toc_depth_1 {
	width: auto;
	font-weight: bold;
	margin-right: 10px;
}
.toc_list a {
	text-decoration: none;
}

.toc_list ul {
	margin: 15px 0 0 25px !important;
}
.toc_list ul > li {
	font-size: 1.3rem !important;
	line-height: 1.5 !important;
	margin-bottom: 8px !important;
}
.toc_list ul > li:last-of-type {
	margin-bottom: 0 !important;
}
.toc_list a:hover {
	text-decoration: underline !important;
}
.toc_number {
	width: 30px;
	color: #333333;
	display: inline-block;
}



/* 目次（サイドバー）
======================================================*/

#toc-widget-2 {
	position: sticky;
}
.toc_widget_list {
	width: 300px !important;
	font-size: 1.3rem;
	padding: 50px 15px 15px !important;
	background: #f9f9f9 !important;
	border: 1px solid #0095d9 !important;
	position: relative;
}
.toc_widget_list:after {
	content: "このページの目次";
	font-size: 18px;
	font-weight: bold;
	position: absolute;
	top: 15px;
	left: 50%;
	transform: translateX(-50%);
}
.toc_widget_list ul {
	display: none;
}
.toc_widget_list .toc_number {
	width: 15px;
	font-weight: bold;
	text-indent: 0;
}
.toc_widget_list li {
	line-height: 1.4 !important;
	margin-bottom: 15px !important;
}
.toc_widget_list li:last-of-type {
	margin-bottom: 0 !important;
}
.toc_widget_list a {
	text-decoration: none;
	text-indent: -20px;
	padding-left: 21px !important;
	display: inline-block;
}
.toc_widget_list a:hover {
	text-decoration: underline;
}



/* 見出し
======================================================*/

.ttl-a,
.atc-detail_ctt h2 {
	width: 100%;
	font-size: 2.6rem;
	font-weight: bold;
	line-height: 1.5;
	padding: 15px 20px;
	margin: 80px 0 40px;
	background: #f5f5f5;
	border-left: 7px solid #0095d9;
}
.ttl-a.fst {
	margin: 0 0 40px;
}

.ttl-b,
.atc-detail_ctt h3 {
	width: 100%;
	font-size: 2.3rem;
	font-weight: bold;
	line-height: 1.5;
	padding: 8px 0 8px 15px;
	margin: 60px 0 30px;
	border-left: 6px solid #0095d9;
	border-bottom: 1px solid #0095d9;
}
.ttl-b.fst {
	margin: 0 0 30px;
}

.ttl-c,
.atc-detail_ctt h4 {
	color: #0095d9;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.5;
	padding-bottom: 8px;
	margin: 50px 0 25px;
	border-bottom: 1px solid #0095d9;
}
.ttl-c.fst {
	margin: 0 0 25px;
}

.ttl-d,
.atc-detail_ctt h5 {
	color: #0095d9;
	font-size: 1.8rem;
	line-height: 1.5;
	padding: 2px 0 2px 10px;
	margin: 40px 0 20px;
	border-left: 3px solid #0095d9;
}
.ttl-d.fst {
	margin: 0 0 20px;
}

.ttl-a span,
.ttl-b span,
.ttl-c span,
.atc-detail_ctt h2 span,
.atc-detail_ctt h3 span,
.atc-detail_ctt h4 span {
	font-weight: bold;
}



/* 表
======================================================*/

/* 7:13の表 thの背景ライトグレー */
.tbl_a {
	width: 100% !important;
	font-size: 1.4rem;
	margin: 20px 0;
}
.tbl_a th {
	width: 35% !important;
	font-weight: bold;
	line-height: 1.8;
	vertical-align: middle;
	padding: 15px;
	background: #f5f5f5;
	border: 1px solid #cccccc;
}
.tbl_a td {
	width: 65% !important;
	line-height: 1.8;
	vertical-align: middle;
	padding: 15px;
	border: 1px solid #cccccc;
}
.tbl_a td p {
	margin-bottom: 10px;
}
.tbl_a td p:last-of-type {
	margin-bottom: 0;
}

/* 7:13の表 thの背景ライトグレー（ヘッダー付き） */
.tbl_a-h {
	width: 100% !important;
	font-size: 1.4rem;
	margin: 20px 0;
}
.tbl_a-h th {
	width: 35% !important;
	font-weight: bold;
	line-height: 1.8;
	vertical-align: middle;
	padding: 15px;
	background: #f5f5f5;
	border: 1px solid #cccccc;
}
.tbl_a-h td {
	width: 65% !important;
	line-height: 1.8;
	vertical-align: middle;
	padding: 15px;
	border: 1px solid #cccccc;
}
.tbl_a-h tr:first-of-type th,
.tbl_a-h tr:first-of-type td {
	color: #ffffff;
	font-size: 1.6rem;
	font-weight: normal;
	text-align: center;
	padding: 5px 15px;
	background: #666666;
}
.tbl_a-h td p {
	margin-bottom: 10px;
}
.tbl_a-h td p:last-of-type {
	margin-bottom: 0;
}

/* 料金プラン比較表（1プラン） */
.tbl_b-1 {
	width: 100% !important;
	font-size: 1.4rem;
	margin-bottom: 20px;
}
.tbl_b-1 th {
	width: 40% !important;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
	border-right: 3px double #cccccc;
}
.tbl_b-1 th span {
	font-weight: bold;
}
.tbl_b-1 td {
	width: 60% !important;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
}

.tbl_b-1 tr:nth-of-type(2n-1) th,
.tbl_b-1 tr:nth-of-type(2n-1) td {
	background: #f9f9f9;
}
.tbl_b-1 tr:first-of-type th,
.tbl_b-1 tr:first-of-type td {
	color: #FF4726;
	font-weight: bold;
	background: #FFF1EE;
}
.tbl_b-1 tr:first-of-type td {
	letter-spacing: 0.05em;
}

.tbl_b-1 td p {
	margin-bottom: 15px;
}
.tbl_b-1 td p:last-of-type {
	margin-bottom: 0;
}

/* 料金プラン比較表（2プラン） */
.tbl_b-2 {
	width: 100% !important;
	font-size: 1.4rem;
	margin-bottom: 20px;
}
.tbl_b-2 th {
	width: 30% !important;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
	border-right: 3px double #cccccc;
}
.tbl_b-2 th span {
	font-weight: bold;
}
.tbl_b-2 td {
	width: 35% !important;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
}

.tbl_b-2 tr:first-of-type th,
.tbl_b-2 tr:first-of-type td {
	color: #0095d9;
	font-weight: bold;
	text-align: center;
	background: #E3F7FF;
	border-bottom: 2px solid #cccccc;
}
.tbl_b-2 tr:nth-of-type(2n) th,
.tbl_b-2 tr:nth-of-type(2n) td {
	background: #f9f9f9;
}
.tbl_b-2 tr:nth-of-type(2) th,
.tbl_b-2 tr:nth-of-type(2) td {
	color: #FF4726;
	font-weight: bold;
	background: #FFF1EE;
}
.tbl_b-2 tr:nth-of-type(2) td {
	letter-spacing: 0.05em;
}

.tbl_b-2 td p {
	margin-bottom: 15px;
}
.tbl_b-2 td p:last-of-type {
	margin-bottom: 0;
}

/* 料金プラン比較表（3プラン） */
.tbl_b-3 {
	width: 100% !important;
	font-size: 1.4rem;
	margin-bottom: 20px;
}
.tbl_b-3 th {
	width: 25% !important;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
	border-right: 3px double #cccccc;
}
.tbl_b-3 th span {
	font-weight: bold;
}
.tbl_b-3 td {
	width: 25% !important;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
}

.tbl_b-3 tr:first-of-type th,
.tbl_b-3 tr:first-of-type td {
	color: #0095d9;
	font-weight: bold;
	text-align: center;
	background: #E3F7FF;
	border-bottom: 2px solid #cccccc;
}
.tbl_b-3 tr:nth-of-type(2n) th,
.tbl_b-3 tr:nth-of-type(2n) td {
	background: #f9f9f9;
}
.tbl_b-3 tr:nth-of-type(2) th,
.tbl_b-3 tr:nth-of-type(2) td {
	color: #FF4726;
	font-weight: bold;
	background: #FFF1EE;
}
.tbl_b-3 tr:nth-of-type(2) td {
	letter-spacing: 0.05em;
}

.tbl_b-3 td p {
	margin-bottom: 15px;
}
.tbl_b-3 td p:last-of-type {
	margin-bottom: 0;
}

/* 料金プラン比較表（4プラン） */
.tbl_b-4 {
	width: 100% !important;
	font-size: 1.4rem;
	margin-bottom: 20px;
}
.tbl_b-4 th {
	width: 20% !important;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
	border-right: 3px double #cccccc;
}
.tbl_b-4 th span {
	font-weight: bold;
}
.tbl_b-4 td {
	width: 20% !important;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
}

.tbl_b-4 tr:first-of-type th,
.tbl_b-4 tr:first-of-type td {
	color: #0095d9;
	font-weight: bold;
	text-align: center;
	background: #E3F7FF;
	border-bottom: 2px solid #cccccc;
}
.tbl_b-4 tr:nth-of-type(2n) th,
.tbl_b-4 tr:nth-of-type(2n) td {
	background: #f9f9f9;
}
.tbl_b-4 tr:nth-of-type(2) th,
.tbl_b-4 tr:nth-of-type(2) td {
	color: #FF4726;
	font-weight: bold;
	background: #FFF1EE;
}
.tbl_b-4 tr:nth-of-type(2) td {
	letter-spacing: 0.05em;
}

.tbl_b-4 td p {
	margin-bottom: 15px;
}
.tbl_b-4 td p:last-of-type {
	margin-bottom: 0;
}

/* 比較表（2項目） */
.tbl_c-2 {
	width: 100% !important;
	font-size: 1.4rem;
	margin-bottom: 20px;
}
.tbl_c-2 th {
	width: 30% !important;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
	border-right: 3px double #cccccc;
}
.tbl_c-2 td {
	width: 35% !important;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
}

.tbl_c-2 tr:nth-of-type(2n-1) th,
.tbl_c-2 tr:nth-of-type(2n-1) td {
	background: #f9f9f9;
}
.tbl_c-2 tr:first-of-type th,
.tbl_c-2 tr:first-of-type td {
	color: #0095d9;
	font-weight: bold;
	text-align: center;
	background: #E3F7FF;
	border-bottom: 2px solid #cccccc;
}

.tbl_c-2 td p {
	margin-bottom: 15px;
}
.tbl_c-2 td p:last-of-type {
	margin-bottom: 0;
}

/* 比較表（3項目） */
.tbl_c-3 {
	width: 100% !important;
	font-size: 1.4rem;
	margin-bottom: 20px;
}
.tbl_c-3 th {
	width: 25% !important;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
	border-right: 3px double #cccccc;
}
.tbl_c-3 td {
	width: 25% !important;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
}

.tbl_c-3 tr:nth-of-type(2n-1) th,
.tbl_c-3 tr:nth-of-type(2n-1) td {
	background: #f9f9f9;
}
.tbl_c-3 tr:first-of-type th,
.tbl_c-3 tr:first-of-type td {
	color: #0095d9;
	font-weight: bold;
	text-align: center;
	background: #E3F7FF;
	border-bottom: 2px solid #cccccc;
}

.tbl_c-3 td p {
	margin-bottom: 15px;
}
.tbl_c-3 td p:last-of-type {
	margin-bottom: 0;
}

/* 比較表（4項目） */
.tbl_c-4 {
	width: 100% !important;
	font-size: 1.4rem;
	margin-bottom: 20px;
}
.tbl_c-4 th {
	width: 20% !important;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
	border-right: 3px double #cccccc;
}
.tbl_c-4 td {
	width: 20% !important;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
}

.tbl_c-4 tr:nth-of-type(2n-1) th,
.tbl_c-4 tr:nth-of-type(2n-1) td {
	background: #f9f9f9;
}
.tbl_c-4 tr:first-of-type th,
.tbl_c-4 tr:first-of-type td {
	color: #0095d9;
	font-weight: bold;
	text-align: center;
	background: #E3F7FF;
	border-bottom: 2px solid #cccccc;
}

.tbl_c-4 td p {
	margin-bottom: 15px;
}
.tbl_c-4 td p:last-of-type {
	margin-bottom: 0;
}


/* 比較表（2項目） 左寄せ */
.tbl_d-2 {
	width: 100% !important;
	font-size: 1.4rem;
	margin-bottom: 20px;
}
.tbl_d-2 th {
	width: 30% !important;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	vertical-align: middle;
	padding: 10px;
	border: 1px solid #cccccc;
	border-right: 3px double #cccccc;
}
.tbl_d-2 td {
	width: 35% !important;
	line-height: 1.5;
	padding: 10px;
	border: 1px solid #cccccc;
}

.tbl_d-2 tr:nth-of-type(2n-1) th,
.tbl_d-2 tr:nth-of-type(2n-1) td {
	background: #f9f9f9;
}
.tbl_d-2 tr:first-of-type th,
.tbl_d-2 tr:first-of-type td {
	color: #0095d9;
	font-weight: bold;
	text-align: center;
	background: #E3F7FF;
	border-bottom: 2px solid #cccccc;
}

.tbl_d-2 td p {
	margin-bottom: 15px;
}
.tbl_d-2 td p:last-of-type {
	margin-bottom: 0;
}



/* リスト
======================================================*/

/* 1列 */
.ul_a,
.atc-detail_ctt ul,
.atc-detail_ctt ol {
	padding: 25px 30px;
	margin: 25px 0;
	background: #F4FCFF;
	border: 1px solid #C6ECFF;
	counter-reset: rank;
}
.wp-block-quote ul,
.wp-block-quote ol {
	padding: 0;
	background: none;
	border: none;
}
.ul_a li,
.atc-detail_ctt li {
	line-height: 1.8;
	padding-left: 20px;
	margin-bottom: 12px;
	position: relative;
}
.atc-detail_ctt ol li {
	padding-left: 25px;
}
.ul_a li:last-of-type,
.atc-detail_ctt li:last-of-type {
	margin-bottom: 0;
}
.ul_a li:before,
.atc-detail_ctt ul li:before {
	content: "";
	width: 8px;
	height: 8px;
	background: #0095d9;
	border-radius: 4px;
	display: block;
	position: absolute;
	top: 9px;
	left: 0;
}
.atc-detail_ctt ol li:before {
	counter-increment: rank;
	content: counter(rank) ".";
	color: #0095d9;
	font-weight: bold;
	margin-right: 10px;
	position: absolute;
	top: 0;
	left: 0;
}

/* 2列 */
.ul_a-2,
.atc-detail_ctt .ul_a-2 {
	padding: 25px 30px 13px;
	margin: 25px 0;
	background: #F4FCFF;
	border: 1px solid #C6ECFF;
	display: flex;
	flex-wrap: wrap;
}
.ul_a-2 li,
.atc-detail_ctt .ul_a-2 li {
	width: 50%;
	line-height: 1.8;
	padding-left: 18px;
	margin-bottom: 12px;
	position: relative;
}
.ul_a-2 li:before,
.atc-detail_ctt .ul_a-2 li:before {
	content: "";
	width: 6px;
	height: 6px;
	background: #0095d9;
	display: block;
	position: absolute;
	top: 11px;
	left: 0;
}



/* キャラ + 吹き出し
======================================================*/

.balloon {
	width: 100%;
	margin: 25px 0;
	overflow: hidden;
}
.balloon .balloon_icn {
	width: 70px;
}
.balloon-left .balloon_icn {
	margin-right: -70px;
	float: left;
}
.balloon-right .balloon_icn {
	margin-left: -70px;
	float: right;
}
.balloon_name {
	font-size: 1.1rem;
	text-align: center;
	margin-top: 5px;
}
.balloon_chatting {
	width: 100%;
}
.balloon_says {
	width: calc(100% - 190px);
	display: inline-block;
	position: relative; 
	padding: 20px;
	border-radius: 12px;
}
.balloon-left .balloon_says {
	background: #E1F5FF;
	margin: 10px 95px 0 95px;
}
.balloon-right .balloon_says {
	background: #FFEDEA;
	margin: 10px 95px 0 95px;
}
.balloon_says:after {
	content: "";
	border: 10px solid transparent;
	display: inline-block;
	position: absolute;
	top: 20px;
}
.balloon-left .balloon_says:after {
	border-right: 17px solid #E1F5FF;
	left: -27px;
}
.balloon-right .balloon_says:after {
	border-left: 17px solid #FFEDEA;
	right: -27px;
}
.balloon_says p {
	font-size: 1.5rem;
	line-height: 1.6;
	margin: 0;
}



/* 記事詳細パーツ
======================================================*/

/* コード表示 */
.wp-block-code {
	font-family: inherit;
	padding: 25px 30px;
	margin: 20px 0;
	background: #F4FCFF;
	border: 1px solid #0095d9;
	white-space: normal;
}
.wp-block-code code {
	font-family: inherit;
}

/* 画像 */
.aligncenter {
	text-align: center;
	margin: 0 auto;
	display: block;
}
.wp-caption {
	width: auto !important;
}
.wp-caption img {
	border: 1px solid #dddddd;
}
.wp-caption-text {
	color: #cccccc;
	font-size: 1.1rem;
	text-align: center;
	line-height: 1;
	margin-top: 5px;
}
.wp-caption-text a {
	color: #cccccc;
	text-decoration: none;
	font-style: normal;
	cursor: default;
}

/* You Tube */
.youtube-wrapper {
	height: 0;
	padding-bottom: 56.25%;
	padding-top: 30px;
	margin: 20px 0;
	border: 1px solid #dddddd;
	position: relative;
	overflow: hidden;
}
.youtube-wrapper iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.ytp-impression-link {
	display: none;
}

/* BOX */
.box_a {
	padding: 25px 30px;
	margin: 25px 0;
	background: #F4FCFF;
	border: 1px solid #C6ECFF;
}
.box_a p:last-of-type {
	margin-bottom: 0;
}

/* 引用 */
.wp-block-quote {
	width: 100%;
	padding: 30px 70px;
	margin: 20px 0;
	background-color: #F4FCFF;
	background-image: url(../images/left-quotes.svg),url(../images/right-quotes.svg);
	background-size: 30px auto,30px auto;
	background-repeat: no-repeat,no-repeat;
	background-position: top 20px left 20px,bottom 20px right 20px;
	border-radius: 8px;
}
.wp-block-quote cite {
	color: #999999;
	font-size: 1.3rem;
}
.wp-block-quote cite a {
	text-decoration: none;
}
.wp-block-quote cite a:hover {
	text-decoration: underline;
}

/* リンクカード */
.link-card_a {
	width: 650px;
	line-height: 1.5;
	margin: 60px auto 0;
	position: relative;
}
.link-card_a:before {
	content: "こちらのページもCheck !";
	color: #ffffff;
	font-size: 1.3rem;
	letter-spacing: 0.05em;
	line-height: 26px;
	padding: 0 10px;
	background: #0095d9;
	display: inline-block;
	position: absolute;
	top: -13px;
	left: 25px;
}
.link-card_a a {
	width: 100%;
	color: #333333;
	font-size: 2.0rem;
	font-weight: bold;
	text-decoration: none;
	padding: 30px 60px 25px 25px;
	background: #f5f5f5 url(../images/link-arrow_blue.svg) no-repeat right 20px center;
	background-size: auto 20px;
	border: 2px solid #aaaaaa;
	display: block;
	transition: 0.3s;
}
.link-card_a a:hover {
	color: #0095d9;
	background: #F4FCFF url(../images/link-arrow_blue.svg) no-repeat right 20px center;
	background-size: auto 20px;
	border: 2px solid #0095d9;
	transition: 0.3s;
}

.link-card_b {
	width: 650px;
	margin: 60px auto 0;
	position: relative;
}
.link-card_b:before {
	content: "こちらのページもCheck !";
	color: #ffffff;
	font-size: 1.3rem;
	letter-spacing: 0.05em;
	line-height: 26px;
	padding: 0 10px;
	background: #0095d9;
	display: inline-block;
	position: absolute;
	top: -13px;
	left: 25px;
}
.link-card_b a {
	width: 100%;
	text-decoration: none;
	padding: 30px 60px 25px 25px;
	background: #f5f5f5 url(../images/link-arrow_blue.svg) no-repeat right 20px center;
	background-size: auto 20px;
	border: 2px solid #aaaaaa;
	display: flex;
	align-items: center;
	transition: 0.3s;
}
.link-card_b a:hover {
	color: #0095d9;
	background: #F4FCFF url(../images/link-arrow_blue.svg) no-repeat right 20px center;
	background-size: auto 20px;
	border: 2px solid #0095d9;
	transition: 0.3s;
}
.link-card_b a span {
	color: #333333;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.5;
}
.link-card_b img {
	width: 120px;
	margin-right: 20px;
}

/* リンク切れのTwitter埋め込み */
blockquote.twitter-tweet {
	max-width: 550px;
	font-size: 2.0rem;
	padding: 15px 30px 15px 15px;
	margin: 0 auto;
	border: 1px solid #cccccc;
	border-radius: 15px;
	position: relative;
}
blockquote.twitter-tweet:before {
	content: "";
	display: block;
	width: 25px;
	height: 25px;
	background: url(../images/icn_twitter.svg) no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 12px;
	right: 16px;
}
blockquote.twitter-tweet p {
	line-height: 1.2;
}



/* 関連記事
======================================================*/

.sec-relation {
	padding: 40px 40px 10px;
	margin-top: 60px;
	border: 1px solid #0095d9;
}
.sec-relation_ttl {
	color: #0095d9;
	font-size: 2.5rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: 40px;
	position: relative;
}
.sec-relation_ul {
	display: flex;
	flex-wrap: wrap;
}
.sec-relation_ul li {
	width: 310px;
	margin: 0 44px 30px 0;
}
.sec-relation_ul li:nth-of-type(2n) {
	margin: 0 0 30px 0;
}
.relation-atc_ec {
	margin-bottom: 10px;
}
.relation-atc_ttl {
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 0;
}
.relation-atc_ttl a {
	color: #333333;
	text-decoration: none;
	transition: 0.3s;
}
.relation-atc_ttl a:hover {
	color: #0095d9;
	transition: 0.3s;
}



/* ページャー
--------------------------------------- */
#pagination {
	margin: 60px 0 0;
	display: flex;
	justify-content: center;
}
#pagination .prev,
#pagination .next {
	width: 110px;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
	line-height: 50px;
}
#pagination .prev a,
#pagination .next a {
	color: #ffffff;
	text-decoration: none;
	background: #666666;
	display: block;
	transition: 0.3s;
}
#pagination .prev a:hover,
#pagination .next a:hover {
	text-decoration: none;
	opacity: 0.7;
	transition: 0.3s opacity;
}
#pageselect-btn {
	width: 240px;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.05em;
	border-left: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
	position: relative;
	transition: 0.3s opacity;
}
#pageselect-btn:hover {
	opacity: 0.7;
	transition: 0.3s opacity;
}
#pagination-label {
	width: 100%;
	color: #ffffff;
	background: #666666 url(../images/icn_pulldown.svg) no-repeat right 10px center;
	background-size: auto 8px;
	line-height: 50px;
	position: absolute;
	top: 0;
	z-index: 1;
}
#pagination select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	height: 50px;
	cursor: pointer;
	position: relative;
	z-index: 2;
	opacity: 0;
}
#pagination select::-ms-expand {
	display: none; /* デフォルトのスタイルを無効(IE用) */
}
#pagination select:focus {
	z-index: -1;
	opacity: 1;
}



/* SNS シェアボタン
======================================================*/

.sns-share_box {
	width: 80%;
	padding: 30px;
	margin: 80px auto 0;
	background: #eeeeee;
	border-radius: 10px;
}

.sns-share_ttl {
	color: #aaaaaa;
	font-size: 2.5rem;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.03em;
	line-height: 1;
	margin-bottom: 25px;
}
.sns-share_ttl span {
	font-weight: bold;
	padding: 0 40px;
	position: relative;
}
.sns-share_ttl span:before,
.sns-share_ttl span:after {
	content: '';
	width: 25px;
	height: 1px;
	position: absolute;
	top: 50%;
	display: inline-block;
	background-color: #aaaaaa;
}
.sns-share_ttl span:before {
	left:0;
	transform: rotate(60deg);
}
.sns-share_ttl span:after {
	right: 0;
	transform: rotate(-60deg);
}

.sns-share {
	width: 290px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
.sns-share img {
	width: auto;
	height: 50px;
}



/* 運営者情報
======================================================*/

.profile-twitter {
	display: flex;
	justify-content: space-between;
}



/* お問い合わせ
======================================================*/

.cf-stc {
	margin: 0 0 30px;
}

.tbl_cf {
	width: 100%;
	font-size: 1.4rem;
	line-height: 1.8;
	margin: 0 auto;
}
.tbl_cf th {
	width: 30%;
	vertical-align: middle;
	padding: 20px;
	border: 1px solid #cccccc;
	background: #f5f5f5;
}
.tbl_cf td {
	width: 70%;
	padding: 20px;
	vertical-align: middle;
	border: 1px solid #cccccc;
}

.cf_ttl {
	line-height: 20px;
	justify-content: space-between;
	display: flex;
}
.cf_required {
	color: #ffffff;
	font-size: 1.1rem;
	letter-spacing: 0.1em;
	line-height: 20px;
	padding: 0 5px;
	background: #ff0000;
	display: inline-block;
}

.tbl_cf input,
.tbl_cf textarea {
	line-height: 1.8;
	background: #f9f9f9;
	border: 1px solid #cccccc;
}
.cf_text input {
	width: 100%;
	height: 40px;
	padding-left: 5px;
}
.cf_textarea textarea {
	width: 100%;
	height: 300px;
	padding: 0 5px;
}
.cf_post input {
	width: 150px;
	height: 40px;
	padding-left: 5px;
}
.cf_address select {
	width: 150px;
	height: 40px;
}
.cf_address input {
	width: 100%;
	height: 40px;
	padding-left: 5px;
}
.cf_check input {
	width: 18px;
	height: 18px;
	margin: 0 3px 0 0;
	position: relative;
	top: -1px;
}
.cf_check .horizontal-item input {
	margin-left: 15px;
}
.cf_check .horizontal-item:first-of-type input {
	margin-left: 0;
}

input:focus,
textarea:focus,
select:focus {
	border: 1px solid #0594B4;
	outline: 0;
}

.cf_btn-area {
	width: 220px;
	height: 50px;
	margin: 50px auto 0;
	overflow: hidden;
}
.page-id-16 .cf_btn-area {
	width: 480px;
	margin: 50px auto 0;
}

.btn_cf-confirmation {
	width: 220px;
	height: 50px;
	color: #ffffff;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
	line-height: 45px;
	background: #0095d9 url(../images/icn_cf_right.png) no-repeat right 10px top 17px;
	border: none;
	border-radius: 8px;
	display: block;
	float: right;
	transition: 0.4s;
}
.btn_cf-confirmation:hover {
	cursor: pointer;
	opacity: 0.7;
	transition: 0.4s;
}

.btn_cf-return {
	width: 220px;
	height: 50px;
	color: #ffffff;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
	line-height: 45px;
	background: #0095d9 url(../images/icn_cf_left.png) no-repeat left 10px top 17px;
	border: none;
	border-radius: 8px;
	display: block;
	float: left;
	transition: 0.4s opacity;
}
.btn_cf-return:hover {
	cursor: pointer;
	opacity: 0.7;
	transition: 0.4s opacity;
}

.grecaptcha-badge {
	bottom: 100px !important;
}



/* 404
======================================================*/

.notfound_box {
	width: 100%;
	font-size: 1.8rem;
	text-align: center;
	padding: 60px 0;
	border: 1px solid #dddddd;
}

.notfound_toplink {
	text-align: center;
	margin: 30px 0 0;
}
.notfound_toplink a {
	text-decoration: none;
}
.notfound_toplink a:hover {
	text-decoration: underline;
}
.notfound_toplink .fa-angle-right {
	margin-left: 6px;
}