*{
	padding: 0;
	margin: 0;
	border: 0;
	box-sizing: border-box;
	font-weight: normal;
	font-size: 100%;
	list-style: none;
}
html{
	font-size: 62.5%;
	-webkit-font-smoothing: antialiased;
}
body{
	font-size: 1.8rem;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W6", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	letter-spacing: 0.02rem;
	line-height: 2;
	position: relative;
	padding: 0 30px;
}
main{
	width: 100%;
	max-width: 1200px;
	margin: auto;
}
article > *,
.lead > *{
	margin-bottom: 50px;
}
article > *:last-child{
	margin-bottom: 80px;
}
a{
	transition: 0.2s;
	color: #90c;
}
article a{
	text-decoration: underline;
}
a:hover{
	text-decoration: none;
}



/* --- 広告 --- */
.ads{
	margin: 80px auto;
}
.ads + hr{
	margin-top: -30px;
}

.easyLink-box{
	align-items: center;
	border-color: #999 !important;
}
.easyLink-info-name a{
	color: #90c !important;
	font-weight: 600;
}
div.easyLink-box p{
	word-break: normal !important;
}
div.easyLink-box div.easyLink-info p.easyLink-info-btn a{
	padding: 12px !important;
	font-size: 100% !important;
	height: auto !important;
	width: 100% !important;
}
.easyLink-info-btn-yahoo{
	font-feature-settings: "palt";
}



/* --- ボタン --- */
.btn{
	display: block;
	text-align: center;
}
.btn a,
.btn button{
	display: inline-block;
	padding: 10px 20px;
	text-decoration: none;
	line-height: 1.5;
	font-weight: bold;
	transition: 0.2s;
	border-bottom: solid 3px rgba(0,0,0,0.4);
	border-radius: 4px;
	color: #fff;
	background: rgb(255,0,204);
	background: -moz-linear-gradient(-45deg,  rgba(255,0,204,1) 0%, rgba(0,0,255,1) 100%);
	background: -webkit-linear-gradient(-45deg,  rgba(255,0,204,1) 0%,rgba(0,0,255,1) 100%);
	background: linear-gradient(135deg,  rgba(255,0,204,1) 0%,rgba(0,0,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff00cc', endColorstr='#0000ff',GradientType=1 );
}
.btn a:hover,
.btn button:hover{
	color: rgba(255,255,255,0.7);
}
.btn-up{
	position: fixed;
	background: rgb(255,0,204);
	background: -moz-linear-gradient(-45deg,  rgba(255,0,204,1) 0%, rgba(0,0,255,1) 100%);
	background: -webkit-linear-gradient(-45deg,  rgba(255,0,204,1) 0%,rgba(0,0,255,1) 100%);
	background: linear-gradient(135deg,  rgba(255,0,204,1) 0%,rgba(0,0,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff00cc', endColorstr='#0000ff',GradientType=1 );
	right: 0;
	bottom: 0;
	padding: 12px;
	z-index: 10;
	line-height: 1;
	opacity: 0.8;
}
.btn-up:hover{
	opacity: 1;
	cursor: pointer;
}



/* --- 枠 --- */
.box{
	padding: 30px;
	border: solid 2px #ddd;
	background: #fafafa url(/images/bg-hougan.png);
	background-size: 14px;
}
.box > *{
	margin-bottom: 20px;
}
.box > *:last-child{
	margin-bottom: 0;
}
.caution{
	position: relative;
}
.caution::before{
	content: "";
	display: block;
	width: 32px;
	height: 32px;
	background: url(/images/warning.svg) no-repeat;
	position: absolute;
	top: -12px;
	left: -10px;
}
.box-grad{
	padding: 20px;
	background: rgb(240,184,255);
	background: -moz-linear-gradient(-45deg, rgba(240,184,255,1) 0%, rgba(161,219,255,1) 100%);
	background: -webkit-linear-gradient(-45deg, rgba(240,184,255,1) 0%,rgba(161,219,255,1) 100%);
	background: linear-gradient(135deg, rgba(240,184,255,1) 0%,rgba(161,219,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f0b8ff', endColorstr='#a1dbff',GradientType=1 );
	font-size: 200%;
	font-weight: bold;
	text-align: center;
	color: #fff;
	text-shadow: 0 0 10px blue;
}
.keywords{
	border: solid 2px #ddd;
	background: #fafafa url(/images/bg-hougan.png);
	background-size: 14px;
	position: relative;
}
.keywords::after{
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	right: 0;
	bottom: 0;
	border-style: solid;
	border-width: 0 0 30px 30px;
	border-color: transparent transparent #ddd transparent;
}
.keywords li{
	display: inline-block;
	background: 0;
	padding: 0;
	margin-bottom: 0;
	margin-right: 20px;
}



/* --- 画像 --- */
.card{
	padding: 10px;
	background: #fff;
	box-shadow: 0 0 5px 5px rgba(0,0,0,0.03);
	border-radius: 5px;
	width: 300px;
	height: 530px;
	box-sizing: content-box;
	margin-left: auto;
	margin-right: auto;
}
amp-img{
	position:relative;
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
amp-img::after{
	display: block;
	width: 100%;
	height: 100%;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
.img-right{
	width: 160px;
	height: auto;
	padding: 7px;
	box-sizing: content-box;
	background: #fff;
	box-shadow: 0 0 5px 5px rgba(0,0,0,0.03);
	border-radius: 5px;
	float: right;
	margin-left: 30px;
	margin-bottom: 20px;
}
.img-right::after,
.clearfix{
	content: "";
	display: block;
	clear: both;
}
.r{transform: rotate(180deg);}



/* --- テキスト関連 --- */
b{font-weight:bold;}
strong{background:linear-gradient(transparent 40%, #ffff66 0%);font-weight:bold;}
em{color:#f60;font-weight:bold;font-style:normal;}

p.hdr{
	font-size: 150%;
	margin-bottom: 30px;
	font-weight: bold;
}

.related{
	position: relative;
	padding-left: 4.5em;
}
.related::before{
	position: absolute;
	top: 0;
	left: 0;
	content: "関連記事";
	background: #000;
	color: #fff;
	font-size: 80%;
	padding: 5px;
	margin-top: 5px;
	line-height: 1;
}
.related + .related{
	margin-top: -30px;
}

.sbA{
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 15px;
	color: #333;
	text-align: center;
	font-weight: bold;
}
.sbA::before,
.sbA::after{
	content: "";
	display: inline-block;
	width: 2px;
	height: 20px;
	background: #333;
}
.sbA::before{transform:rotate(-15deg);margin-right:1rem;}
.sbA::after{transform:rotate(15deg);margin-left:1rem;}

.sbB{
	position: relative;
	margin-right: 20px;
}
.sbB span{
	padding: 15px 20px;
	border-radius: 5px;
	background: #eae2ff;
	display: inline-block;
}
.sbB::before{
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	transform: rotate(45deg);
	position: absolute;
	left: -8px;
	top: 50%;
	margin-top: -8px;
	background: #eae2ff;
}

.sbB-r{
	text-align: right;
	margin-left: 20px;
}
.sbB-r span{
	padding: 15px 20px;
	border: solid 1px #000;
	border-radius: 5px;
	background: #fff;
	position: relative;
	display: inline-block;
	text-align: left;
}
.sbB-r span::before{
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	transform: rotate(45deg);
	position: absolute;
	right: -9px;
	top: 50%;
	margin-top: -8px;
	border-top: solid 1px #000;
	border-right: solid 1px #000;
	background: #fff;
}
.sbB-r + .sbB-r,
.sbB + .sbB{
	margin-top: -30px;
}

hr::after{
	content: "◆";
	display: block;
	text-align: center;
}



/* --- リスト --- */
ol{
	counter-reset: item;
}
ol li{
	position: relative;
	padding-left: 35px;
	margin-bottom: 10px;
}
ol li:last-child{
	margin-bottom: 0;
}
ol li:before{
	counter-increment: item;
	content: counter(item)'';
	display: flex;
	justify-content: center;
	align-items: center;
	width: 24px;
	height: 24px;
	color: #fff;
	background: #666;
	border-radius: 50%;
	margin-right: 10px;
	position: absolute;
	left: 0;
	top: 6px;
}
article ul li{
	background: url(/images/check.svg) no-repeat 0 8px;
	background-size:18px;
	padding-left: 25px;
	margin-bottom: 10px;
}
article ul li:last-child{
	margin-bottom: 0;
}
#TableOfContents li{
	background: 0;
	padding-left: 0;
	margin-bottom: 0;
}



/* --- header --- */
header{
	padding: 50px 0 20px;
	margin: 0 -30px 80px;
	background: rgb(255,0,204);
	background: -moz-linear-gradient(-45deg,  rgba(255,0,204,1) 0%, rgba(0,0,255,1) 100%);
	background: -webkit-linear-gradient(-45deg,  rgba(255,0,204,1) 0%,rgba(0,0,255,1) 100%);
	background: linear-gradient(135deg,  rgba(255,0,204,1) 0%,rgba(0,0,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff00cc', endColorstr='#0000ff',GradientType=1 );
	position: relative;
}
header a{
	text-decoration: none;
	color: #fff;
}
.language-switcher{
	position: absolute;
	top: 10px;
	left: 10px;
	line-height: 1;
	font-size: 90%;
}
.language-switcher a{
	font-weight: bold;
}
header .logo{
	display: block;
	text-align: center;
}
header span{
	display: block;
	line-height: 1;
}
header span:first-child{
	display: block;
	font-family: "futura","Century Gothic",sans-serif;
	font-size: 200%;
	margin-bottom: 15px;
}
header span:last-child{
	font-size: 80%;
	font-weight: bold;
	margin-bottom: 40px;
}
header nav ul{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
header nav li{
	line-height: 1;
}
header nav a{
	line-height: 1;
	display: inline-block;
	white-space: nowrap;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	padding: 10px;
	font-size: 90%;
	font-feature-settings: "palt";
	transition: 0.2s;
}
header nav a:hover{
	opacity: 0.7;
}



/* --- HOME --- */
.cat1,
.cat2{
	display: flex;
	flex-wrap: wrap;
}
.cat1{
	margin-bottom: 20px;
}
.cat2{
	margin-bottom: 50px;
}
.cat1 > *,
.cat2 > *{
	display: block;
	width: calc((100% - 60px)/3);
	margin-bottom: 30px;
	margin-right: 30px;
	text-decoration: none;
	color: #000;
	transition: 0.2s;
}
.cat1 > *{
	background: url(/images/right.svg) no-repeat right 5px center;
	display: flex;
	align-items: center;
	box-shadow: 0 0 5px 5px rgba(0,0,0,0.03);
}
.cat2 > *{
	border: solid 2px #000;
	text-align: center;
	padding: 10px;
	font-weight: bold;
	font-size: 120%;
}
.cat1 > *:nth-child(3n),
.cat2 > *:nth-child(3n){
	margin-right: 0;
}
.cat1 a:hover,
.cat2 a:hover{
	opacity: 0.7;
}
.cat1 figure amp-img{
	width: 100px;
	height: 100px;
}
.cat1 p{
	padding: 20px;
	line-height: 1.5;
}
.cat1 span{
	display: block;
}
.cat1 .jp{
	font-size: 120%;
	font-weight: bold;
}
.cat1 .en{
	color: #C4B66A;
	margin-left: 3px;
}
.cat1.english .en{
	font-size: 120%;
	font-weight: bold;
	color: #000;
}



/* --- 記事一覧ボックス --- */
.article-list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.article-list > *{
	display: block;
	width: 31%;
	margin-bottom: 50px;
}
.article-list::after{
	display: block;
	content:"";
	width: 31%;
	order: 13;
}
.article-list a{
	color: #000;
	text-decoration: none;
}
.article-list a:hover{
	opacity: 0.8;
}
.cat-date{
	display: flex;
	justify-content: space-between;
	margin: 15px 10px 5px 10px;
	font-size: 90%;
	color: #90c;
}
.m-arcana{color: #25367c;}
.wands{color: #ff0000;}
.cups{color: #58bde8;}
.swords{color: #83949c;}
.pentacles{color: #ff9900;}
.faq{text-transform: uppercase;}

.cat-date time{
	color: #333;
}
.cat-date + p{
	margin: 0 10px;
}
.article-list > span{
	display: block;
}
.article-list a:first-child{order: 1;}
.article-list a:nth-child(2){order: 2;}
.article-list a:nth-child(3){order: 3;}
.ads1{order: 4;}
.article-list a:nth-child(4){order: 5;}
.article-list a:nth-child(5){order: 6;}
.article-list a:nth-child(6){order: 7;}
.ads2{order: 8;}
.article-list a:nth-child(7){order: 9;}
.article-list a:nth-child(8){order: 10;}
.article-list a:nth-child(9){order: 11;}
.article-list a:nth-child(10){order: 12;}

.pickup .article-list a{
	margin-bottom: 0;
}



/* --- pagination --- */
.pagination{
	display: flex;
	justify-content: center;
}
.pagination li:nth-child(1),
.pagination li:nth-child(2),
.pagination li:last-child,
.pagination li:nth-last-child(2){display:none;}
.pagination a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	margin: 0 5px;
	background: rgba(0,0,0,0.2);
	color: #fff;
	text-decoration: none;
	border-radius: 50%;
}
.pagination a:hover{opacity:0.7;}
.pagination li.active a{background:#f0c;color:#fff;}
.pagination li.active a:hover{opacity: 1;}


aside{
	width: 100%;
	max-width: 1200px;
	margin: auto;
}



/* --- footer --- */
footer{
	background: #f9f9f9;
	margin: 80px -30px 0 -30px;
	padding: 30px 30px 0;
	font-size: 90%;
}
footer .inner{
	width: 100%;
	max-width: 1200px;
	margin: auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
footer .inner > div{
	width: 47%;
}
.footer-prof span{
	display: block;
	font-size: 120%;
	margin-bottom: 10px;
	font-family: "futura","Century Gothic",sans-serif;
}
.footer-prof > div{
	display: flex;
}
footer > div a{
	text-decoration: none;
}
footer > div a:hover{
	text-decoration: underline;
}
.footer-prof figure{
	width: 100px;
	height: 100px;
	margin-top: 10px;
}
.footer-prof amp-img{
	border-radius: 50%;
}
.footer-prof div div{
	width: calc(100% - 100px);
	margin-left: 20px;
}
footer ul{
	margin: 20px 0;
}
footer li:before{
	content: "- ";
}
footer li a{
	color: #000;
}
.footer-nav amp-img{
	vertical-align: middle;
	margin-right: 5px;
	margin-top: -2px;
}
small{
	text-align: center;
	padding: 30px 0;
	width: 100%;
}
small a{
	color: #000;
	text-decoration: none;
}



/* --- 記事ページ --- */
article{
	width: 100%;
	max-width: 800px;
	margin: auto;
}
article .cat{
	text-decoration: none;
	text-transform: uppercase;
}
article h1{
	font-size: 180%;
	margin-bottom: 30px;
	font-weight: bold
}
.date{
	text-align: right;
	font-size: 90%;
}
.date amp-img{
	vertical-align: middle;
	margin-right: 5px;
	margin-top: -3px;
}
.date *:nth-child(2){
	margin-right: 20px;
}
.lead-index{
	display: flex;
	flex-direction: column;
}
.lead{
	order: 1;
}
.index{
	order: 2;
}
#TableOfContents{
	padding: 30px;
	border: solid 1px #dfdfdf;
	border-top: 0;
	font-size: 90%;
}
#TableOfContents a{
	text-decoration: none;
	color: #000;
}
#TableOfContents a:hover{
	color: #90c;
}
#TableOfContents ul li ul li{
	margin-left: 1em;
}
#TableOfContents ul li ul li::before{
	content: "- ";
}
.index h2{
	text-align: center;
	padding: 10px;
	font-size: 100%;
}

article h2{
	font-size: 140%;
	border-left: solid 2px #000;
	padding: 10px 15px;
	margin-top: 80px;
	font-weight: bold;
}
article h3{
	border-top: solid 1px #000;
	border-bottom: solid 1px #000;
	padding: 10px;
	font-size: 110%;
	margin-top: 80px;
	background: #fafafa;
}
article h2 + h3{
	margin-top: 50px;
}
article h4{
	margin-bottom: 20px;
	font-weight: bold;
}
article figure{
	text-align: center;
}
article figcaption{
	display: inline-block;
	font-size: 90%;
	padding: 20px;
	padding-bottom: 0;
}



/* --- 概要ページ --- */
.outline div figure{
	width: 160px;
	height: auto;
	padding: 7px;
	box-sizing: content-box;
	margin-left: 20px;
	margin-bottom: 0;
	background: #fff;
	box-shadow: 0 0 5px 5px rgba(0,0,0,0.03);
	border-radius: 5px;
	float: right;
}
.outline div::after{
	content: "";
	display: block;
	clear: both;
}
.outline p,
.outline h3{
	margin: 0;
	margin-bottom: 30px;
}
.outline h3{
	border: 0;
	padding: 8px 12px;
	color: #533be4;
	background: #f0f0f0;
	font-weight: bold;
}
.outline table{
	border-collapse: collapse;
	margin-bottom: 40px;
	width: 100%;
}
.outline table tr > *{
	padding: 15px 20px;
	border: solid 1px #ccc;
}
.outline table th{
	font-size: 90%;
	white-space: nowrap;
	width: 44%;
}
.outline table th:first-child{width: 12%;}

.pink{background: #ffe0f7;}
.blue{background: #e3efff;}
.yellow{background: #fffde3;}
.l-gray{background: #f3f3f3;}



/* free-tarot-reading */
#result{
	position: relative;
}
#result figure{
	background: rgb(179,220,237);
	background: -moz-linear-gradient(top, rgba(179,220,237,1) 0%, rgba(54,0,124,1) 0%, rgba(0,0,0,1) 100%);
	background: -webkit-linear-gradient(top, rgba(179,220,237,1) 0%,rgba(54,0,124,1) 0%,rgba(0,0,0,1) 100%);
	background: linear-gradient(to bottom, rgba(179,220,237,1) 0%,rgba(54,0,124,1) 0%,rgba(0,0,0,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b3dced', endColorstr='#000000',GradientType=0 );
	padding: 50px 10px;
	line-height: 1;
}
#result amp-img{
	display; block;
	margin: auto;
}
#result .open{
	display: block;
	cursor: pointer;
}
#result .open span{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	position: absolute;
	top: calc(50% - 50px);
	left: calc(50% - 50px);
	color: #fff;
	background: rgba(1,1,1,0.5);
	font-weight: bold;
	font-size: 150%;
	z-index: 10;
}
#result h2{
	text-align: center;
	color: #000;
	font-size: 150%;
	padding: 0;
	border-left: 0;
	margin-top: 40px;
}
#result p{
	margin: 40px auto;
}



/* --- 表 --- */
.tableA{
	border-collapse: collapse;
}
.tableA tr > *{
	padding: 5px 15px;
	border-bottom: solid 1px #ccc;
}
.tableA tr:first-child > *{
	border-top: solid 1px #ccc;
}
.tableA tr.bg-gray th{
	border: 0;
	background: #666;
	color: #fff;
}
.tableA th{
	white-space: nowrap;
	text-align: center;
	background: #f6f6f6;
}
.w100p{
	width: 100%;
}
.tac{
	text-align: center;
}



/* --- 全記事ページ --- */
.all a{
	padding: 1rem;
	display: flex;
	border-top: solid 1px #ddd;
	color: #000;
	text-decoration: none;
	transition: 0.2s;
	font-size: 90%;
}
.all a:hover{
	background:#f9f9f9;
}
.all time{
	white-space: nowrap;
	margin-right: 1rem;
}
.tag a{
	display: inline-block;
	margin-right: 10px;
	white-space: nowrap;
}
.mb80{
	margin-bottom: 80px;
}





@media only screen and (max-width: 767px){

body{
	letter-spacing: 0;
	padding: 0 20px;
}
article > *,
.lead > *{
	margin-bottom: 40px;
}



/* --- SP-広告 --- */
.ads{
	margin: 70px auto;
}

.easyLink-img{
	margin-bottom: 20px !important;
}
div.easyLink-box div.easyLink-info p.easyLink-info-name{
	margin: 10px 0 !important;
	line-height: 1.8;
}
div.easyLink-box div.easyLink-info p.easyLink-info-btn a{
	padding: 15px 10px !important;
}



/* --- SP-枠 --- */
.box{
	padding: 20px;
}
.box-grad{
	font-size: 140%;
}
.keywords li{
	font-size: 90%;
	margin-right: 10px;
}



/* --- SP-画像 --- */
.card{
	padding: 8px;
	width: 180px;
	height: 318px;
}
.img-right{
	width: 100px;
	padding: 5px;
	margin: 0 0 20px 20px;
}



/* --- SP-テキスト関連 --- */

p.hdr{
	font-size: 120%;
}

.related + .related{
	margin-top: -20px;
}
.sbA{
	margin-bottom: 10px;
	line-height: 1.5;
}
.sbB{
	margin-right: 0;
}
.sbB-r{
	margin-left: 0;
}
.sbB + .sbB,
.sbB-r + .sbB-r{
	margin-top: -25px;
}



/* --- SP-header --- */
header{
	padding: 20px 0 10px;
	margin: 0 -20px 50px;
}
header span:last-child{
	margin-bottom: 20px;
}
header nav a{
	padding: 7px 5px;
}



/* --- SP-HOME --- */
.cat1,
.cat2{
	display: block;
}
.cat1{
	margin-bottom: 30px;
}
.cat2{
	margin-bottom: 50px;
}
.cat1 > *,
.cat2 > *{
	width: 100%;
	margin-bottom: 20px;
	margin-right: 0;
}
.cat1 > *{
	background: url(/images/right.svg) no-repeat right 5px center;
}



/* --- SP-記事一覧ボックス --- */
.article-list{
	margin-bottom: 30px;
}
.article-list > *{
	width: 100%;
	margin-bottom: 20px;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
}
.article-list a{
	padding-bottom: 15px;
}
.article-list .cat-date{
	font-size: 80%;
	margin: 15px;
	margin-bottom: 10px;
}
.article-list p{
	font-size: 90%;
	margin: 0 15px;
}
.article-list::after{
	display: none;
}
.article-list a:first-child{order: 1;}
.article-list a:nth-child(2){order: 2;}
.ads1{order: 3;}
.article-list a:nth-child(3){order: 4;}
.ads2{order: 5;}
.article-list a:nth-child(4){order: 6;}
.article-list a:nth-child(5){order: 7;}
.article-list a:nth-child(6){order: 8;}
.article-list a:nth-child(7){order: 9;}
.article-list a:nth-child(8){order: 10;}
.article-list a:nth-child(9){order: 11;}
.article-list a:nth-child(10){order: 12;}

.pickup .article-list a{
	margin-top: 30px;
}
.pickup .article-list a:first-of-type{
	margin-top: 0;
}



/* --- SP-pagination --- */
.pagination{
	padding: 0 20px;
}



/* --- SP-footer --- */
footer{
	margin: 50px -20px 0 -20px;
	padding: 20px;
}
footer .inner{
	display: block;
}
footer .inner > div{
	width: 100%;
}
.footer-prof span{
	text-align: center;
}
.footer-prof > div{
	display: block;
}
.footer-prof figure{
	margin: 0 auto 20px;
}
.footer-prof div div{
	width: 100%;
	margin-left: 0;
}
small{
	display: block;
	text-align: center;
	padding: 10px 0 0;
}
.btn-up{
	padding: 10px;
}



/* --- SP-記事ページ --- */
article .cat{
	display: block;
	font-size: 90%;
	margin-bottom: 10px;
}
.date *:nth-child(2){
	margin-right: 10px;
}
article h1{
	font-size: 140%;
	margin-bottom: 20px;
	line-height: 1.8;
}
.date{
	margin-bottom: 50px;
}
#TableOfContents{
	padding: 20px;
}

article figure,
article .ads{
	margin-left: -20px;
	margin-right: -20px;
}

article h2{
	font-size: 110%;
	margin-top: 70px;
	line-height: 1.8;
}
article h3{
	font-size: 100%;
	margin-top: 70px;
	line-height: 1.8;
}
article h2 + h3{
	margin-top: 40px;
}
article figcaption{
	padding: 15px;
	padding-bottom: 0;
	line-height: 1.8;
}
article > *:last-child{
	margin-bottom: 50px;
}


/* --- SP-表 --- */
.tableA tr > *{
	padding: 5px 10px;
}
.table-sp{
	border-top: solid 1px #ccc;
}
.table-sp th,
.table-sp td{
	display: block;
}
.table-sp td{
	padding: 10px;
}
.table-sp tr:first-child > *{
	border-top: 0;
}



/* --- SP-全記事ページ --- */
.all a{
	display: block;
}
.all time{
	display: block;
	margin-right: 0;
}
.mb80{
	margin-bottom: 50px;
}



/* --- SP-概要ページ --- */
.outline div figure{
	width: 100px;
	padding: 5px;
	margin: 0 0 20px 20px;
}
.outline h3{
	margin-bottom: 20px;
}
.outline p{
	margin-bottom: 30px;
}
.outline table tr > *{
	padding: 10px;
	font-size: 80%;
}
.outline table th{
	width: auto;
}
.outline table td{
	vertical-align: top;
}
.outline table th:first-child{
	width: auto;
}
.outline li{
	background-size: 12px;
	background-position: 0 6px;
	padding-left: 15px;
	line-height: 1.6;
}



/* SP-free-tarot-reading */
#result h2{
	font-size: 120%;
}
}/* sp-end */




@media screen and (min-width: 768px) and (max-width: 960px) {
main .article-list > *{
	width: 48%;
}
main .article-list::after{
	display: none;
}
.cat1 > *,
.cat2 > *{
	width: calc((100% - 30px)/2);
}
.cat1 > *:nth-child(3n),
.cat2 > *:nth-child(3n){
	margin-right: 30px;
}
.cat1 > *:nth-child(2n),
.cat2 > *:nth-child(2n){
	margin-right: 0;
}
.article-list a:first-child{order: 1;}
.article-list a:nth-child(2){order: 2;}
.ads1{order: 3;}
.article-list a:nth-child(3){order: 4;}
.article-list a:nth-child(4){order: 5;}
.ads2{order: 6;}
.article-list a:nth-child(5){order: 7;}
.article-list a:nth-child(6){order: 8;}
.article-list a:nth-child(7){order: 9;}
.article-list a:nth-child(8){order: 10;}
.article-list a:nth-child(9){order: 11;}
.article-list a:nth-child(10){order: 12;}
}