﻿@import url("reset.css");
/*
デザインは診断っぽい雰囲気を出し、無機質で汎用性も抜群に高いので
ニューモフィズムを利用しています。
もしよかったらそのままお使いください。

ニューモフィズムについて
https://hajimete.org/css-new-jene
*/
/* base */
html, body {
		height: 100%;
}
body {
		width: 100%;
		margin: 0 auto;
		font-size: 16px;
		font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", Osaka, "MS PGothic", arial, helvetica, sans-serif;
		font-feature-settings: "pwid" 1;
		-webkit-font-smoothing: subpixel-antialiased;
		-moz-osx-font-smoothing: unset;
		-webkit-text-size-adjust: 100%;
		text-rendering: optimizeLegibility;
		word-wrap: break-word;
		color: #3f515e;
		background: #ffffff;
		overflow-y: scroll;
		overflow-x: hidden;
		-webkit-overflow-scrolling: touch;
}
a, p, span, div, li, ul, h1, h2 {
		display: block;
		box-sizing: border-box;
		-moz-osx-font-smoothing: grayscale;
		-webkit-font-smoothing: antialiased;
}
img {
		max-width: 100%;
		vertical-align: top;
}
li {
		list-style: none;
}
a {
		text-decoration: none;
		color: #47a7ff;
		-webkit-transition: 0.6s ease-out;
		transition: 0.6s ease-out;
}
a:hover {
		opacity: .6;
}
/* IE11でsvg崩れ防止 */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	img[src$=".svg"] {
			width: 100%;
	}
}
/* theme */
.progress-bar {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 3px;
		margin: 0 auto;
}
.progress-bar > span {
		width: 0%;
		height: 100%;
		background: rgba(190, 204, 219, 0.2);
		background: #47a7ff;
		-webkit-transition: 0.7s 0.2s cubic-bezier(0.5, 1, 0.89, 1);
		transition: 0.7s 0.2s cubic-bezier(0.5, 1, 0.89, 1);
}
header {
		position: relative;
		padding: 64px 30px 35px;
		max-width: 700px;
		margin: 0 auto;
}
header > h1 {
		font-size: 23px;
}
header > p {
		font-size: 14px;
		font-weight: 400;
		opacity: .7;
		line-height: 1.4;
		margin: 5px auto 0;
}
main {
		position: relative;
		width: 100%;
		max-width: 700px;
		margin: 0 auto;
}
.questions {
		padding: 0 30px;
}
.questions > li {
		font-size: 15px;
		width: 100%;
		margin: 0;
		padding: 30px 28px;
		border-radius: 14px;
		box-shadow: 7px 7px 12px -2px rgba(161, 183, 205, 0.5), -5px -5px 8px -2px rgba(255, 255, 255, 0.9), 10px 10px 32px -3px rgba(161, 183, 205, 0.15) inset, -6px -6px 22px -13px rgba(255, 255, 255, 0.6) inset;
		-webkit-transition: 0.5s cubic-bezier(0.65, 0, 0.35, 1);
		transition: 0.5s cubic-bezier(0.65, 0, 0.35, 1);
		opacity: 0;
}
.questions > li > p {
		font-size: 12px;
		font-weight: bold;
		opacity: .4;
		margin-bottom: 1px;
}
.questions > li .last-q {
		text-align: center;
		font-size: 17px;
		opacity: 1;
}
.questions > li > h2 {
		font-size: 17px;
}
.questions > li .select {
		margin: 18px 0 10px;
}
.questions > li .select > p {
		font-size: 15px;
		margin-bottom: 12px;
		padding: 12px;
		text-align: center;
		border-radius: 8px;
		cursor: pointer;
		vertical-align: top;
		box-shadow: 2px 2px 6px 1px rgba(161, 183, 205, 0.6), -1px -1px 5px 2px white, 10px 10px 32px -3px rgba(161, 183, 205, 0.15) inset, -6px -6px 22px -13px rgba(255, 255, 255, 0.6) inset;
}
.questions > li .select > p:hover {
		background: #47a7ff;
		color: #fff;
		-webkit-transition: 0.2s cubic-bezier(0.5, 1, 0.89, 1);
		transition: 0.2s cubic-bezier(0.5, 1, 0.89, 1);
}
.questions > li .back-list {
		margin: 4px 0 0;
		display: inline-block;
		padding: 4px 8px;
		color: #47a7ff;
		cursor: pointer;
		-webkit-transition: 0.2s cubic-bezier(0.5, 1, 0.89, 1);
		transition: 0.2s cubic-bezier(0.5, 1, 0.89, 1);
}
.questions > li .back-list:hover {
		opacity: .6;
}
.questions > li .send {
		position: relative;
		margin: 18px auto 10px;
		max-width: 240px;
}
.questions > li .send > a {
		color: #fff;
		background: #47a7ff;
		font-size: 15px;
		margin-bottom: 12px;
		padding: 12px;
		text-align: center;
		border-radius: 8px;
		box-shadow: 2px 2px 6px 1px rgba(161, 183, 205, 0.6), -1px -1px 5px 2px white, 10px 10px 32px -3px rgba(161, 183, 205, 0.15) inset, -6px -6px 22px -13px rgba(255, 255, 255, 0.6) inset;
		-webkit-transition: 0.2s cubic-bezier(0.5, 1, 0.89, 1);
		transition: 0.2s cubic-bezier(0.5, 1, 0.89, 1);
}
.ansewer {
		margin: 0 30px;
		font-size: 18px;
		padding: 30px 28px;
		border-radius: 14px;
		box-shadow: 7px 7px 12px -2px rgba(161, 183, 205, 0.5), -5px -5px 8px -2px rgba(255, 255, 255, 0.9), 10px 10px 32px -3px rgba(161, 183, 205, 0.15) inset, -6px -6px 22px -13px rgba(255, 255, 255, 0.6) inset;
		-webkit-transition: 0.5s cubic-bezier(0.65, 0, 0.35, 1);
		transition: 0.5s cubic-bezier(0.65, 0, 0.35, 1);
		text-align: justify;
}
.ansewer > p {
		font-size: 14px;
		font-weight: bold;
		opacity: .4;
		margin: 16px 0 14px;
}
.back {
		margin: 30px 30px 0;
}
.back a {
		display: inline-block;
}
.social {
		letter-spacing: -.4em;
		font-size: 0;
		text-align: center;
		margin: 0 auto;
		padding: 14% 30px 34px;
}
.social li {
		letter-spacing: normal;
		font-size: 16px;
		display: inline-block;
		width: 36px;
		border-radius: 8px;
		overflow: hidden;
		margin: 0 3% 3% 0;
		box-shadow: 2px 2px 6px 1px rgba(161, 183, 205, 0.6), -1px -1px 5px 2px white, 10px 10px 32px -3px rgba(161, 183, 205, 0.15) inset, -6px -6px 22px -13px rgba(255, 255, 255, 0.6) inset;
}
.social li:last-child {
		margin-right: 0;
}
.social svg {
		width: 100%;
		height: 100%;
		fill-rule: evenodd;
		clip-rule: evenodd;
		stroke-linejoin: round;
		stroke-miterlimit: 2;
}
.social svg path {
		fill: #3f515e;
}
footer {
		font-size: 14px;
		text-align: center;
		margin: 0 0 40px;
}
/* state */
.left {
		margin-left: -200% !important;
		opacity: 0;
}
.right {
		margin-left: 200% !important;
		opacity: 0;
}
.opas {
		opacity: 1 !important;
}
.click {
	-webkit-animation: click .6s linear;
	animation: click .6s linear;
}
@keyframes click {
	0% {transform: scale(1);}
	15% {transform: scale(.975);}
	100% {transform: scale(1);}
}
@-webkit-keyframes click {
	0% {-webkit-transform: scale(1);}
	15% {-webkit-transform: scale(.975);}
	100% {-webkit-transform: scale(1);}
}
@media (min-width: 768px) {
		.questions > li .select {
				letter-spacing: -.4em;
				font-size: 0;
		}		.questions > li .select > p {
				font-size: 15px;
				letter-spacing: normal;
				display: inline-block;
				width: 48.5%;
				margin-right: 3%;
		}		.questions > li .select > p:nth-child(even) {
				margin-right: 0;
		}}

/*
	OSの画面設定に合わせてダークモード表示
	https://hajimete.org/supports-dark-mode-with-css
*/
@media (prefers-color-scheme: dark) {
		body {
				background: #15202B;
				color: #fff;
		}		a {
				color: #5bb0ff;
		}		a:hover {
				opacity: .4;
		}		.progress-bar > span {
				background: #5bb0ff;
		}		.questions > li {
				box-shadow: 7px 7px 12px -2px rgba(9, 14, 19, 0.4), -5px -5px 8px -2px rgba(255, 255, 255, 0.05), 10px 10px 32px -3px rgba(10, 16, 23, 0.3) inset, -6px -6px 22px -13px rgba(255, 255, 255, 0.05) inset;
		}		.questions > li .select > p {
				box-shadow: 7px 7px 12px -2px rgba(9, 14, 19, 0.4), -5px -5px 8px -2px rgba(255, 255, 255, 0.05), 10px 10px 32px -3px rgba(10, 16, 23, 0.3) inset, -6px -6px 22px -13px rgba(255, 255, 255, 0.05) inset;
		}		.questions > li .select > p:hover {
				background: #5bb0ff;
		}		.questions > li .back-list {
				color: #5bb0ff;
		}		.questions > li .send > a {
				background: #5bb0ff;
				box-shadow: 7px 7px 12px -2px rgba(9, 14, 19, 0.4), -5px -5px 8px -2px rgba(255, 255, 255, 0.05), 10px 10px 32px -3px rgba(10, 16, 23, 0.3) inset, -6px -6px 22px -13px rgba(255, 255, 255, 0.05) inset;
		}		.ansewer {
				box-shadow: 7px 7px 12px -2px rgba(9, 14, 19, 0.4), -5px -5px 8px -2px rgba(255, 255, 255, 0.05), 10px 10px 32px -3px rgba(10, 16, 23, 0.3) inset, -6px -6px 22px -13px rgba(255, 255, 255, 0.05) inset;
		}		.social li {
				box-shadow: 7px 7px 12px -2px rgba(9, 14, 19, 0.4), -5px -5px 8px -2px rgba(255, 255, 255, 0.05), 10px 10px 32px -3px rgba(10, 16, 23, 0.3) inset, -6px -6px 22px -13px rgba(255, 255, 255, 0.05) inset;
		}		.social svg path {
				fill: #fff;
		}}

/* 補足BOX　2 */
.kakomi-hosoku2 {
 margin: 2em 0em 2em 4em; /* 枠外との間隔（上、右、下、左） */
 padding: 5px 10px;
 font-size: 0.9em; /* 文字サイズ */
 color: #555555; /* 文字色 */
 border-left: 3px solid #999999; /* 線の太さ・線種・色 */
 border-radius: 5px;
}

/*　テープ　枠　4 */
.kakomi-tape4 {
 position:relative;
 padding: 35px 20px 20px;
 margin: 2.5em auto;
 width: 90%;
 color: #555555; /* 文字色 */
 background-color: #F6F6F6; /*BOX背景色*/ 
 box-shadow: 0 2px 5px #999;
}
.title-tape4 {
 position: absolute;
 top: -15px;
 left: 30px;
 padding: 4px 20px;
 color: #555555; /*タイトル色*/
 font-weight: bold;
 background-color: rgba(255,255,255,.1);
 border-left: 2px dotted rgba(0,0,0,.1);
 border-right: 2px dotted rgba(0,0,0,.1);
 box-shadow: 0 0 5px rgba(0,0,0,0.2); 
 transform: rotate(-3deg);
}

/* 黒板風　タイトル　2 */
.kokuban-t2 {
 position: relative;
 margin: 2em auto;
 padding: 3.2em 1em 1em;
 width: 90%; /* ボックス幅 */
 background-color: #006633; /* ボックス背景色 */
 color: #fff; /* 文章色 */
 border: 8px solid #b2771f; /* 枠線 */
 border-radius: 3px; /* 角の丸み */
 box-shadow: 0 0 5px #333, 0 0 5px #555 inset;
}
.kokuban-t2::before,
.kokuban-t2::after {
 position: absolute;
 content: '';
 bottom: 0;
} 
.kokuban-t2::before {
 right: 10px;
 border: solid 3px #fff; /*チョーク（白）*/
 width: 20px; 
 border-radius: 3px 2px 0 2px;
}
.kokuban-t2::after {
 right: 40px;
 border: solid 3px #ffff6b; /*チョーク（黄色）*/
 width: 15px; 
 border-radius: 8px 5px 2px 5px;
}
.title-t2 {
 position: absolute;
 left: 1em;
 top: .5em;
 font-weight: bold;
 font-size: 1.1em;
 color: #ffff6b; /* タイトル色 */
}

/**** アドセンス丸角リンクユニット風リンク集  ****/
.link_unit {
    border-color: #06c;
    background-color: #ffffff;
    border: none;
}
.link_unit ul li:before {
    content: none;
}
.link_unit ul {
    flex-wrap: wrap;
    padding: 0;
}
.link_unit ul li {
    line-height: 1.5;
    list-style-type: none!important;
    text-align: center;
    padding:0;
    margin: 0;
}	
.link_unit ul li a{
    text-decoration: none;
    font-size: .8em;
    color: #0405d4;
    background: #fff;
    border: 1px solid #0405d4;
    border-radius: 2em;
    box-shadow: 0 2px 2px rgba(0,0,0,.2);
    padding: .5em 0;
    margin: .2em 0;
    width: 100%;
    justify-content: center;
    position: relative;
    text-align: center;
    text-decoration: none;
    display: inline-flex;
    transition-duration: 300ms;
}

.link_unit ul li a:hover {
color:#fff;
background: #0405d4;
}


@media screen and (min-width: 487px){
.link_unit ul {
display: flex;
}
.link_unit ul li {
	 width: 47%;
	 margin: .2em .4em;
}
.link_unit ul li a{
padding: .2em 0;
margin: 0;
}
}




/**** レスポンシブタイル  ****/
/**** https://www.webcreatorbox.com/tech/css-grid-basic-layout  ****/

.grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}
.item {
  border-radius: 10px;
  background: #F9FAFC;
  padding: 15px;
  text-align: center;
}
img {
  max-width: 100%;
  height: auto;
}
p {
  text-align: left;
}







/**** 画像に枠線と影を付ける */
.effect {
	padding: 11px;
	background-color: #FFFFFF;
	box-shadow: 0 3px 18px -4px rgba(0, 0, 0, 0.8);
}








/*--------------------------------------
  ランキングLISTタグ（ol）
--------------------------------------*/

ol li {
  position: relative;
  padding-left: 3.5em;
  counter-increment: li;
}
ol li::before {
  content: 'Rank ' counter(li) ' -';
  display: block;
  position: absolute;
  top: .3em;
  left: -1em;
  color: #666;
  font-size: 14px;
  line-height: 1;
  font-weight: bold;
}
ol li:nth-of-type(1)::before {
  color: #e4aa1d;
}
ol li:nth-of-type(2)::before {
  color: #9eaeb9;
}
ol li:nth-of-type(3)::before {
  color: #b76901;
}



/* メモ　ホチキス　Ｂ */
.Hochi-box-b {
 position: relative;
 margin: 2em auto;
 padding: 35px 20px 15px;
 width: 90%; /* ボックス幅 */
 background: #fff; /* ボックス背景色 */
 color: #555555; /* 文章色 */
 border: 1px solid #ccc; /* 枠線 */
 box-shadow: 1px 1px 2px #ccc; /* 影 */
}
.Hochi-box-b::before, 
.Hochi-box-b::after {
 position: absolute;
 content: '';
 top: 15px;
 width: 30px;
 border: 1.5px solid #C0C0C0; /*ホチキス*/
 border-radius: 20px;
 box-shadow: 0 -1px 2px #555;
}
.Hochi-box-b::before { left: 80px;}
.Hochi-box-b::after { right: 80px;}













h3 {
     position: relative;
     padding-left: 1em;
}
 
h3::after {
     position: absolute;
     top: 50%;
     left:0;
     transform:translateY(-50%);
     content: '';
     width: 10px;
     height:10px;
     border: solid 4px #446689;
     border-radius:100%;
}











.slash {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
 
.slash::before,
.slash::after {
  content: "";
  width: 25px;
  height: 1px;
  background-color: #000;
  margin: 0px 4px 4px;
}
 
.slash::before {
  transform: rotate(45deg);
}
 
.slash::after {
  transform: rotate(-45deg);
}
 




/* シンプル 枠（影）1 */
.kakomi-box3 {
 margin: 2em auto;
 padding: 1em;
 width: 90%;
 border: 1px solid #ccc; /* 枠線 */
 background-color: #fff; /* 背景色 */
 box-shadow: 1px 1px 2px #ccc;
}