*{
	margin: 0;
	padding: 0;
	font-family: sans-serif;
}
em{
	font-style: normal;
	display: inline;
}
hr{
	height: 6px;
	background-color: #1D95D4;
}
header hr{
	height: 8px;
	border-top: 8px solid #1D2088;
	background-color: #FFFFFF;
	border-bottom: 8px solid #1D95D4;
}
footer hr{
	height: 8px;
	border-top: 8px solid #1D95D4;
	background-color: #FFFFFF;
	border-bottom: 8px solid #1D2088;
}
footer{
	padding-bottom: 0.5em;
}

.imageDRlogo{
	display: block;
	margin: 0 auto;
	width: 75%;
	max-width: 600px;
}
table.bigmassege{
	font-size: 2.2em;
	margin-left: auto;
	margin-right: auto;
	border-spacing: 8vw 0vh;
}
table.bigmassege td{
	width: 27vw;
}
.bigmassege span{
	color: crimson;
	font-weight: 600;
}
.imgkirokubo{
	width: 27vw;
	height: 16vw;
}
.imgsumaho{
	width: 13vw;
	height: 17vw;
}
td.center{
	text-align: center;
	vertical-align:middle; 
}
.syoukai1{
	width: 60vw;
	margin: 0.5em auto;
	font-weight: 550;
}
.syoukai1 em{
	color: #dc143c;
}

/* ----- Result ----- */
.resultList{
	display: flex;
	justify-content: center;
}
.resultList li{
	position: relative;
	display: inline-block;
	min-width: 7em;
	margin: 0.5em 3em;
	padding: 1em;
	text-align: center;
}
.resultList li::before
,.resultList li::after{
	content: "";
	position: absolute;
	
	height: 100%;
	aspect-ratio: 1 / 2.5;
	background-size: contain;
	background-repeat: no-repeat;
	top: 50%;
	transform: translateY(-50%);
}
.resultList li::before {
	left: 0;
	transform: translateX(-100%) translateY(-50%);
	background-image: url('../img/result-l.png');
}
.resultList li::after {
	right: 0;
	transform: translateX(100%) translateY(-50%);
	background-image: url('../img/result-r.png');
}
.resultList li dt{font-size: 1em; font-weight: bold;}
.resultList li dd{font-size: 1.1em;font-weight: bold; color: #1D95D4;}
.resultList li dd em{font-size: 1.5em;}
.resultList li dd span{font-size: 0.7em; vertical-align: top; color: #000;margin-left: 0.5em; font-weight: normal;}
/* ----- Menu ----- */
.menu{
	width: 58vw;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
.menu li{
	width: 15vw;
	height: 19vh;
	display: inline-block;
	margin-top: 3vh;
	margin-left: 2vw;
	margin-right: 2vw;
}
.menu li a{
	padding: 1.2vh 2vw;
	margin-left: 1.5vw;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	width: 10vw;
	height: 15vh;
	font-size: 2.3vmax;
	text-decoration: none;
	transition: .4s;
	border-radius: 1vmin;
	border-style: solid;
	border-width: 0.25vmin;
}
.menu li:nth-of-type(2n) a{
	color: #1D2088;
	border-color: #1D2088;
}
.menu li:nth-of-type(2n) a:hover{
	background-color: #1D2088;
	color: white;
}
.menu li:nth-of-type(2n+1) a{
	color: #1D95D4;
	border-color: #1D95D4;
}
.menu li:nth-of-type(2n+1) a:hover{
	background-color: #1D95D4;
	color: white;
}

.news dt{
	text-align: center;
	font-weight: bold;
	padding: 0.25em 0.5em;
	font-size:28px;
}
.news dd{
	padding: 0.5em;
	margin-bottom: 0.5em;
	font-size: 18px;

	border-bottom: dotted 1px #999;
}
.news dd:last-of-type{
	border-bottom:none;
}
.newsDate{
	font-size: 0.8em;
}
.news dd.holiday{
	border-style: solid none;
	border-width: 3px;
	border-color: #dc143c;
}
.news dd.holiday h1{font-size: 1.2em;padding: 0.5em 0; }
.news dd.holiday div{
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
}
.news dd.holiday div em{
	display: block;
	font-weight: bold;
	margin: 0.5em 0;
	
}
.period{
	padding: 0.5em 1em;
	background: #EBE1BD;
	margin: 1em auto;
	text-align: center;
	color: #C01E30;
	font-weight: bold;
	font-size: 1rem;
}
.annotationList{
	list-style:none;
}

.annotationList li{
	padding-left: 1.25em;
	text-indent: -1.25em;
}

.annotationList li::before{
	content: "※";
	margin-right: 0.25em;
}

/* ----- コンテンツ ----- */
section{
	max-width: 1300px;
	width: 80%;
	margin: 2em auto;
}
section h2
,section h3{
	text-align: center;
	font-weight: normal;
	color: #505050;
}
section h2{
	width: calc(100% - 1em);
	margin: 0 auto;
	padding: 0.5em 0.25em;
	font-size: 1.5rem;
	line-height: 2rem;
	background-color: #dbebf8;
	border-radius: 1rem;
}
section h3{
	width: 70%;
	margin: 2em auto;
	padding: 0.5em 0;
	font-size: 1.4rem;
	border: solid #1F823E;
	border-width: 3px 0;
}
section h3 img{
	display: inline-block;
	vertical-align: middle;
	width: 3em;
}
section h3 span{
	display: inline-block;
	vertical-align: middle;
	max-width: calc(100% - 4em);
	padding: 0 0.5em;
	text-align: left;
}

img.taiya{
	vertical-align: middle;
	width: 2rem;
}
.left{
	float: left;
}
.right{
	float: right;
}


table.naiyou{
	margin-left: auto;
	margin-right: auto;
	margin-top: 4vh;
}
img.naiyouphoto{
	width:100%;
	max-width: 100%;
	height: auto;
}
p.point{
	font-size: 1rem;
}
p.point em{
	color: #dc143c;
	font-weight: bolder;
}
dl.point dt{
	font-size: 1.1rem;
	background: linear-gradient(transparent 60%, #dbebf8 60%);
}

dl.point dt.pointFreeOption{
	background: linear-gradient(transparent 60%, #bfebd3 60%);
}

dl.point dd{
	font-size: 1rem;
	padding-left: 1em;
	padding-bottom: 1em;
}

td.setumei{
	width: 50%;
	padding-left: 2em;
}
div.kanrimaesetu{
	font-weight: 400;
	text-align: center;
	margin-top: 3vh;
}
div.kanrimaesetu em{
	color: #dc143c;
	font-weight: bolder;
}
ul.usePattern{
	width: 70%;
	font-size: 0;
	margin: 1rem auto;
}
ul.usePattern li{
	display: inline-block;
	width: 33%;
	text-align: center;
}
ul.usePattern li img{
	width: 80%;
}

table.contact{
	width: 70%;
	margin: 0 auto;
	border-spacing: 1em 2em;
}
table.contact th{
	width: 15%;
}
table.contact th img{
	width: 100%;
}
table.contact td{
	font-size: 1.5em;
	font-weight: bold;
	text-align: center;
	border-style: solid none;
	border-color: #1F823E;
	border-width: 3px;
}
table.contact td a{
	color: #0000FF;
}


.address{
	font-size: 0.8em;
	text-align: center;
}
img.respons{
	width: 50%;
	max-width: 50%;
	height: auto;
}

.videoList{
	font-size: 0;
	text-align: center;
}
.videoList li{
	width: calc(50% - 1rem);
	display: inline-block;
	margin: 1rem 0.5rem;
	text-align: center;
}
.videoList.subVideo li{
	width: calc(40% - 1rem);
}
.videoList p{
	font-size: 1.5rem;
}

.videoList div{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .5);
}
.videoList div iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}
.videoList .caption{
	display: block;
	font-size: 0.8rem;
	margin-top: 1rem;
}

details{
	display: block;
	width: 70%;
	padding: 1em;
	margin: 1em auto;
	border: solid 1px #ccc;
	border-radius: 1em;
}
details summary{
	display: block;
	padding: 0.5em 0;
}

details p{
	padding: 0.5em 0;
	line-height: 1.8em;
	border-top: dashed 1px #ccc;
}
details em{
	background: linear-gradient(transparent 65%, #FFFF99 0%);
	font-weight: bold;
}


a.cvLink{
	display: block;
	width: 40%;
	margin: 0.5em auto 1em;
	padding: 1em 0;
	line-height:2em;
	text-decoration: none;
	color: #FFFFFF;
	background-color: #1a823f;
	border: double 0.25em #FFFFFF;
	border-radius: 0.5em;
	font-size: 1.25em;
}
a.cvLink:hover{
	opacity: 0.8;
}

.totalPrice{
	margin: 1em auto;
	font-size: 0.8em;
	text-align: right;
}

@media screen and (max-width: 768px) {
	table.bigmassege{
		font-size: 1.5em;
	}
	.syoukai1{
		width: 90%;
	}
	.resultList{display: block; text-align: center;}
	section{
		width: 100%;
	}
	section h3{
		width: calc(100% - 4rem);
	}
	dl.point dt
	,dl.point dd{
		font-size: 1rem;
	}
	table.contact{
		width: 90%;
	}
	table.contact th{
		width: 20%;
	}
	table.contact td{
		font-size: 1.1em;
	}
	
	.videoList li{
		width: calc(100% - 1rem);
	}
	ul.usePattern li{
		width: 100%;
		margin: 1rem 0;
	}
	details{
		width: calc(100% - 4em);
	}
	a.cvLink{
		width: 80%;
		padding: 1em 0;
	}
	.holiday{
		padding: 0 0.5em 0.5em;
	}
	.holidayInner{
		padding: 0.5em 1em;
	}

	.period{
		padding: 0.5em 1em;
		margin: 0.5em auto;
	}
}

@media screen and (max-width: 800px) {
	.naiyou {
		width: 70%;
	}
	.naiyou th,
	.naiyou td {
		display: block;
		width: 100%;
	}
	table.bigmassege td{
		width: 40vw;
	}
	.syoukai1{
		margin-left: auto;
		margin-right: auto;
	}
	
	.imageDRlogo{
		width: 95%;
	}
	
	
	img.respons{
		width: 60%;
		max-width: 60%;
		height: auto;
	}
	td.setumei{
		padding-left: 0;
	}
	
	.totalPrice{
		width: 70%;
		text-align: left;
	}
}


@media screen and (min-width: 600px) and (max-width: 1100px){
	.menu{
		width: 74vw;
	}
	.menu li{
		width: 20vw;
		height: 13vh;
	}
	.menu li a{
		width: 14vw;
		height: 10vh;
	}
}




@media screen and (max-width: 600px){
	.menu{
		width: 70vw;
	}
	.menu li{
		width: 30vw;
		height: 13vh;
	}
	.menu li a{
		width: 30vw;
		height: 10vh;
	}
}


/* 上に戻るボタン */
.pagetop {
	color: #fff;
	background-color: rgba(0,0,0,0.3);
	text-decoration: none;
	display: none;
	position: fixed;
	bottom: 1rem;
	right: 1rem;
	font-size: 1.5rem;
	width: 3.3rem;
	height: 3.3rem;
	line-height: 3.3rem;
	border-radius: 3.3rem;
	text-align: center;
	cursor: pointer;
}

.pagetop.hover {
	color: #fff !important;
	background-color: #ed702b;
	text-decoration: none;
}

