*{
	box-sizing: border-box;
}

html, body, div, h1, p, blockquote, pre, ul, ol, li, dl, dt, dd, table, th, td, form, fieldset {
	margin: 0;
	padding: 0;
	font-size: 14px;
	font-family: "Hiragino Kaku Gothic ProN",Meiryo,sans-serif;
	box-sizing: border-box;
	color: #333333;
	word-break: break-all;
}
a{
	text-decoration: none;
}
.clearfix{
	clear:both;
	display:block;
}
/* ----------------------------------------
* 表示指定
---------------------------------------- */
/* 幅・高さ */
.h100{
height: 100%;
}

.w05{
width:5% !important;
}
.w10{
width:10% !important;
}
.w15{
width:15% !important;
}
.w20{
width:20% !important;
}
.w25{
width:25% !important;
}
.w30{
width:30% !important;
}
.w35{
width:35% !important;
}
.w40{
width:40% !important;
}
.w45{
width:45% !important;
}
.w50{
width:50% !important;
}
.w55{
width:55% !important;
}
.w60{
width:60% !important;
}
.w65{
width:65% !important;
}
.w70{
width:70% !important;
}
.w75{
width:75% !important;
}
.w80{
width:80% !important;
}
.w85{
width:85% !important;
}
.w90{
width:90% !important;
}
.w95{
width:95% !important;
}
.w100{
width:100% !important;
}


/* 文字サイズ */
.addsize{
    font-size:1.4rem !important;
}
.addbold{
    font-weight:bold !important;
}
.smallfont{
	font-size:0.8rem;
}
.fs10rem{
   font-size:1.0rem !important;
}
.fs12rem{
   font-size:1.2rem !important;
}
.fs14rem{
   font-size:1.4rem !important;
}
.fs16rem{
   font-size:1.6rem !important;
}
.fs18rem{
   font-size:1.8rem !important;
}
.fs20rem{
   font-size:2.0rem !important;
}
.fs25rem{
   font-size:2.5rem !important;
}
.fs30rem{
   font-size:3.0rem !important;
}


/* 装飾 */
.z-depth-1{
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12) !important;
}
.z-depth-1:hover{
  box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15) !important;
}


/* タイプ・位置 */
.disp-bl{
display:block;
}
.disp-ib{
display:inline-block;
}

.va-top{
vertical-align: top;
}
.va-bottom{
vertical-align: bottom;
}

.non-space{
letter-spacing: -4em;
}
.non-space1{
letter-spacing: normal;
}

.text-center{
text-align:center !important;
}
.text-left{
text-align:left !important;
}
.text-right{
text-align:right !important;
}

.div-center{
margin:0 auto !important;
}


/* 余白 */
.mg00{
  margin:0px !important;
}
.mg10{
  margin:1.0rem !important;
}
.mg20{
  margin:2.0rem !important;
}
.mg30{
  margin:3.0rem !important;
}
.mt00{
  margin-top:0 !important;
}
.mt10{
  margin-top:1.0rem !important;
}
.mt20{
  margin-top:2.0rem !important;
}
.mt30{
  margin-top:3.0rem !important;
}
.mt40{
  margin-top:4.0rem !important;
}
.mt50{
  margin-top:5.0rem !important;
}
.mb00{
  margin-bottom:0px !important;
}
.mb10{
  margin-bottom:1.0rem !important;
}
.mb20{
  margin-bottom:2.0rem !important;
}
.mb30{
  margin-bottom:3.0rem !important;
}
.mb40{
  margin-bottom:4.0rem !important;
}
.mb50{
  margin-bottom:5.0rem !important;
}
.mr00{
  margin-right:0px !important;
}
.mr10{
  margin-right:1.0rem !important;
}
.mr20{
  margin-right:2.0rem !important;
}
.mr30{
  margin-right:3.0rem !important;
}
.ml00{
  margin-left:0px !important;
}
.ml10{
  margin-left:1.0rem !important;
}
.ml20{
  margin-left:2.0rem !important;
}
.ml30{
  margin-left:3.0rem !important;
}

.pd00{
  padding:0px !important;
}
.pd10{
  padding:1.0rem !important;
}
.pd20{
  padding:2.0rem !important;
}
.pd30{
  padding:3.0rem !important;
}
.pt00{
  padding-top:0 !important;
}
.pt10{
  padding-top:1.0rem !important;
}
.pt20{
  padding-top:2.0rem !important;
}
.pt30{
  padding-top:3.0rem !important;
}
.pt40{
  padding-top:4.0rem !important;
}
.pt50{
  padding-top:5.0rem !important;
}
.pb00{
  padding-bottom:0px !important;
}
.pb10{
  padding-bottom:1.0rem !important;
}
.pb20{
  padding-bottom:2.0rem !important;
}
.pb30{
  padding-bottom:3.0rem !important;
}
.pb40{
  padding-bottom:4.0rem !important;
}
.pb50{
  padding-bottom:5.0rem !important;
}
.pr00{
  padding-right:0px !important;
}
.pr10{
  padding-right:1.0rem !important;
}
.pr20{
  padding-right:2.0rem !important;
}
.pr30{
  padding-right:3.0rem !important;
}
.pl00{
  padding-left:0px !important;
}
.pl10{
  padding-left:1.0rem !important;
}
.pl20{
  padding-left:2.0rem !important;
}
.pl30{
  padding-left:3.0rem !important;
}

/* ----------------------------------------
* コンテンツレイアウト
---------------------------------------- */

.wrapper{
	background-color:#eeeade;
	position:relative;
	min-height:95vh;
	padding-bottom:3rem;
}

.yesno {
	position:relative;
	clear: both;
	overflow: hidden;
}

.yesno ul{
	overflow: hidden;
	padding: 0;
	text-align: center;
}
 
.yesno ul li {
	list-style:none;
	display:inline-block;
	text-align: center;
	margin: 0 0 0 0;
	width:45%;
	background-color:#5476aa;
	margin:1.5rem 1% 1rem 1%;
	border-radius: 2rem;
}
.positionFit {
	width: 100%;
}

.positionFit .qarea{
	width:95%;
	background-color:#ffffff;
	margin:0 auto;
	border-radius:1.5rem;
	padding:1.0rem 1.5rem;
	line-height:1.7rem;
}

.yesno ul li a {
    display:block;
	padding:1.5rem 0rem;
	text-decoration: none;
	color:#ffffff;
}
.yesno ul li a i{
	margin-right:0.5rem;
}


.header{
	width: 100%;
	height: 10rem;
	background: url(../img/eyecatch-sindan.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	z-index: 0;
	margin-bottom:5rem;
}

.header:before{
	content: '';
	background: inherit;
	filter: blur(1px);
	position: absolute;
	top: -1px;
	left: -1px;
	right: -1px;
	bottom: 0px;
	z-index: -1;
}

.headericon{
	position:absolute;
	width:10rem;
	height:10rem;
	border:4px solid #ffffff;
	border-radius: 45%;
	top: 3.5rem;
	left: 50%;
	transform: translate(-50%, 0rem);
	text-align: center;
	background: url(../img/icon-sindan.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	box-shadow: 1px 1px 2px RGBA(0,0,0,0.6);
}

.headericon i{
	font-size:3rem;
	position:absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.contenttitle{
	background-color:#e3e0d7;
	padding:1rem 0 1rem 1rem;
	font-weight:bold;
	font-size:0.9rem;
	position: relative;
	z-index: 3;
}
.contenttitle i{
	margin-right:0.5rem;
}
.contentbox{
	padding:0rem;
}

.qtitle{
	width:100vw;
	position: relative;
	text-align: center;
	margin:1rem 0 1rem 0;
}

.qtitle:before {
	position: absolute;
	top: calc(50% - 1px);
	left: 0;
	width: 100%;
	height: 1px;
	content: '';
	background: #cfcec5;
}
.qtitle span {
	color:#706a4e;
	font-size:0.8rem;
	background-color:#eae2d5;
	position: relative;
	padding:0.25rem 2rem;
	border-radius:2rem;
}

.footer{
	padding:0.5rem;
	background:#999999;
	text-align:center;
	width:100%;
	position: absolute;
	bottom: 0;
}
.footer-inner{
	width:100%;
	font-size:0.7rem;
	color:#ffffff;
}
.answerlink{
	background-color: #eae2d5;
	width: 94vw;
	height: 30vw;
	margin: 0 auto;
	margin-top: 1rem;
	box-shadow: 1px 1px 3px 0px RGBA(0,0,0,0.3);
	position: relative;
	font-size:0;
}
.answerlink a{
	display: block;
}

.answerlinkimg{
	width: 30vw;
	height: 30vw;
	display: inline-block;
}
.answerlinktxtblock{
	display: inline-block;
	width: 64vw;
	vertical-align: top;
	padding: 2vw 3vw 2vw 2vw;
	font-size:1rem;
	vertical-align:top;
}

.answerlinktxt{
	width:100%;
	font-weight:bold;
	color: #706a4e;
	height:12vw;
	overflow:auto;
	line-height:1.5rem;
}
.answerlinktag{
	width:100%;
	height:13vw;
	overflow:auto;
}

.answertag{
	font-size:0.8rem;
	display: inline-block;
	padding: 0.25rem 0.5rem;
	border-radius: 0.6rem;
	background-color: #f8f9f5;
	color:#706a4e;
	margin-bottom:0.25rem;
}

.answertag i{
	margin-right:0.2rem;
}
.linkarrow{
	position: absolute;
	top: 50%;
	right: 1.5vw;
	color: #706a4e;
	transform: translate(0, -50%);
}

.anime01 {
    animation: dokidoki 1.5s infinite;
}
@keyframes dokidoki {
    0% {
        transform: scale(1.05)
    }
    5% {
        transform: scale(1)
    }
    95% {
        transform: scale(1)
    }
    100% {
        -webkit-transform: scale(1.05)
    }
}
.linkbtn{
	background-color: #28ac61 !important;
	color:#f8f9f5 !important;
}

.glaybtn{
	background-color: #e3e0d7 !important;
}

.glaybtn a{
	color: #706a4e !important;
}

.maintitle{
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
	position:relative;
	margin:7.5rem auto 3.0rem;
	min-height: 8rem;
}
.maintitle-text{
	position:relative;
	z-index:3;
	font-size:2.0rem;
	padding:2.0rem 0;
}

.textcontents{
	width:100%;
	padding:0;
	position:relative;
}
.cont-title{
	font-weight:bold;
	font-size:1.4rem;
	text-align:left;
	padding:0.5rem;
	margin:0 auto 1.0rem;
	border-bottom:1px solid #ffffff;
	position:relative;
	z-index:2;
}
.contimg{
	width:100%;
	padding:0 1.0rem;
}
.textcontents-inner{
	width:100%;
	padding:1.0rem;
	position:relative;
	z-index:2;
	line-height:1.8;
}
.linkbtn01{
	width: 80%;
	padding: 1.0rem 0;
	font-size: 1.0rem;
	letter-spacing: 0.3rem;
	text-align: center;
	display: block;
	border-radius: 3.0rem;
	background: #fff;
	margin:1.0rem auto 3.0rem;
	color:#ffffff;
	font-weight:bold;
	background:#28ac61;
	animation-duration: 2s;
}

.linkbtn02{
	width: 48%;
	padding: 1.0rem 0;
	font-size: 1.0rem;
	letter-spacing: 0.3rem;
	text-align: center;
	display: block;
	float:left;
	border-radius: 3.0rem;
	background: #fff;
	margin:0 0 0 4%;
	color:#ffffff;
	font-weight:bold;
	background:#28ac61;
	animation-duration: 2s;
}
.linkbtn02area{
	width:100%;
	padding:0 1.0rem;
	margin: 0 auto 3.0rem;
}
.linkbtn02area .linkbtn02:first-child{
margin:0;
}


/* 背景要素 */
.bgcont001{
	width:100%;
	background:url(../img/bgcont001.jpg) center center /cover no-repeat;
	margin:0;
	padding:0 0 0rem;
	z-index:1;
	position:relative;
}
.bgcont001::before{
	background-color: rgba(255, 255, 255, 0.8);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
	mix-blend-mode: normal;
}
.nonemargin{
	margin:0;
}

.cont-subtitle{
	padding:0.5rem;
	font-size:1.2rem;
	font-weight:bold;
	border-left:5px solid #5476aa;
	line-height:1.0;
	margin:0 auto 1.0rem;
}
.cont-optiontitle{
	font-weight:bold;
	padding:0.5rem;
	font-size:0.9rem;
	border-left:5px solid #28ac61;
	line-height:1.0;
	margin:0 auto 1.0rem;
	margin-bottom:0rem;
}
.cont-innertitle{
	margin: -0.5rem auto 2.0rem;
	text-align: center;
	font-size: 1.5rem;
	font-weight: bold;
	color: #5476aa;
	position:relative;
}
.cont-innertitle:after{
	content: '';
	position: absolute;
	bottom: -0.8rem;
	width: 3.0rem;
	height: 0.2rem;
	border-radius: 10px;
	background: #5476aa;
	left: calc(50% - 1.5rem);
}
.cont-innertxt{
	padding-left:1rem;
	margin-bottom:1.5rem;
}

.bgicon{
	position:absolute;
	position:absolute;
	width:8rem;
	height:8rem;
	animation: spin 10s linear infinite !important;
	top:calc(50% - 4rem);
	left:calc(50% - 4rem);
	font-size:8rem;
	color: #d0cfcc;
	opacity: 0.7;
}

.headericon-top {
	position: absolute;
	width: 13rem;
	height: 13rem;
	border-radius: 45%;
	top: 3.5rem;
	left: 50%;
	transform: translate(-50%, 0rem);
	text-align: center;
	box-shadow: 1px 1px 2px RGBA(0,0,0,0.6);
	border: 4px solid #ffffff;
	overflow:hidden;
}
.headericon-topbg{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	filter: brightness(50%);
}

.headericon-toptext{
	z-index: 3;
	font-size: 1.5rem;
	position: absolute;
	width: 100%;
	height: initial;
	color: #fff;
	top: calc(50% - 0.8rem);
	line-height: 1.1;
	
}
.web-font{
	font-family: 'Fredoka One', cursive;
}
.eyecatch-sub{
	width:94vw;
	height:30vw;
	margin:0 auto;
	margin-top:1rem;
	margin-bottom:1rem;
	filter: sepia(80%) opacity(0.5);
}
.prarea{
	width:80vw;
	margin:0 auto;
}

.prarea img{
	width:100%;
}



/* ----------------------------------------
* 色指定important　順番を考慮し最後尾
---------------------------------------- */
.keycolor01{
	color:#28ac61 !important;
}

.keycolor02{
	color:#5476aa !important;
}


