/* BASE =====================================================*/
html{font-size: 62.5%;}
body{font-size: 20px; line-height: 1.5rem; background: #fffef0;}
a img:hover,a img:active, a:hover, a:active{filter:alpha(opacity=80); -ms-filter: "alpha(opacity=80)"; -moz-opacity:0.8; opacity: 0.8;}
:root {
  --main-color1: #B50081;
  --main-color2: #F86ACF;
  --main-color3: #F9F0F3;
  --sub-color: #D13F93;
  --mono-tone1: #F0F0F0;
  --mono-tone2: #676767;
  --mono-tone3: #707070;
  --sub-color2: #FFF8CA;
}
img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
h1{
	margin: 0;
}
h2{
	margin: 0;
	padding: 0;
	position: relative;
	justify-content: center;
    align-items: center;
	font-size:100%;
}
h2 span{position: relative;}
h2 span::before{
	content: "";
	width: 100%;
	height: 6px;
	background-color: var(--main-color1);
	position: absolute;
	bottom: -20px;
	left: 0;
	z-index: 0;
}
figure{
	margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    background: transparent;
    list-style: none;
    display: block;
}
/*.outline-title img,*/
.outline-box img {
	display: block;
	margin: auto;
}

/* header =====================================================*/
#header {
	padding-top:121px; 
	margin-bottom:37px;
}
#header.end {
	padding-top:0;
}
#header-inner {
	width:1024px;
	margin:0 auto;
}

/* #contents =====================================================*/
#contents a{
	color:#b60081;
	text-decoration:underline;	
}
#contents a:hover{
	text-decoration:none;	
}
.section{
	width:100%;
}
.section-inner{
	width:900px;
	margin:0 auto;
}
.outline-box{
	width: 100%;
	margin:0 auto;
	text-align: center;
}
.outline-box h3{
	margin:80px auto 30px;
	padding: 3px 0 2px;
	font-size:24px;
	line-height:1.8em;
	text-align:center;
	border-radius: 4px;	
	background-color:#61002d;
	color:#ffffff;
}
.outline-box p {
	font-size:20px;
	line-height:1.6em;
	text-align:left;	
	box-sizing: border-box;
}
.list{
	width:100%;
	margin:0 auto;
}
.list li{
	font-size:20px;
	line-height:1.6em;
	text-align:left;
	padding-left:1em;
	text-indent:-1em;
}
.outline-box .list {
	box-sizing: border-box;
}
ul.download {
	width: 85%;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 5%;
	margin: 0 auto 40px;
}

/* #outline =====================================================*/
#outline .download{
	margin-top:20px;
}
.outline-box.isDL {
  margin-top: 60px;
}
.outline-box.isDL h2{
	width:590px;
	margin:auto;
	text-align: center;
	font-size: 24px;
	color: #b60081;
	line-height: normal;
}
.outline-box.isDL h2 + a {
	display: inline-block;
	width: fit-content;
}
#contents .outline-box.isDL h2 + a img {
	max-width: 192px;
}
.outline-box.isDL ul + h2 + img {
	display: inline-block;
}
.font-red {
  font-weight: bold;
  color: #ff0000;
}
.font-bold {
  font-weight: bold;
}
.outline-box.is02 p {
  text-align: center;
  font-size: 16px;
}
.outline-box.is02 p.isMain {
    font-size: 30px;
    font-weight: bold;
}
.outline-box.is05 p {
  text-align: center;
  font-size: 16px; 
}
.outline-box.is05 p.isMain {
    font-size: 30px;
    font-weight: bold;
}
.outline-box.is09 li + .font-bold {
  margin-top: 15px;
}

/* #banner =====================================================*/
#banner .section-inner{
	width:900px;
}
#banner p{
	margin-top: 80px;
}

/* #detail =====================================================*/
#detail{
	margin-top: 80px;
	margin-bottom: 80px;
}
#detail p{
	width:380px;
	margin:0 auto;
}
#detail p a{
	display:block;
}

/* #notes =====================================================*/
#notes{
	margin-top: 20px;
	padding-bottom: 100px;
}
#notes .list{
	width:fit-content;
	margin:0 auto;
}
#notes .list li{
	font-size:16px;
	line-height:1.3em;
}

/* parts =====================================================*/
.footblank{
	margin-left: .5rem;
	width: 1.6rem;
	vertical-align: middle;
}
 #js-button img{
 		width: 56px;
 		height: 56px;
 }

@media screen and (min-width: 641px) {
	ul.download {
		width: fit-content;
		margin-bottom: 80px;
	}
	#banner ul.download {
		margin-bottom: 20px;
	}
  a[href^="tel:"]{pointer-events: none;}
}

@media screen and (max-width: 640px) {
	/* header =====================================================*/
	#header {
		padding-top:17.467vw;
	}
	#header-inner {
		width:100%;
	}

	/* #contents =====================================================*/
	.section-inner{
		width:calc(100% - 30px);
		margin:0 auto;
	}
	.outline-box h3{
		margin:40px auto 15px;
		padding: 7px 10px 6px;
		font-size:18px;
		line-height: 1.3em;
	}
	.outline-box p {
		font-size:16px;
	}
	.list li{
		font-size:16px;
	}

	/* #outline =====================================================*/
	#outline .download{
		margin-top:10px;
		margin-bottom: 0;
	}
  .outline-box.isDL {
    margin-top: 30px;
  }
	.outline-box.isDL h2{
		width:100%;
		margin:25px auto 0;
		font-size: 18px;
	}
	.outline-box.isDL h2 + a {
		display: inline-block;
		width: fit-content;
	}
	#contents .outline-box.isDL h2 + a img {
		max-width: 100px;
	}
	.outline-box.isDL ul + h2 {
		margin-top: 30px;
	}
  .outline-box.is02 p,
  .outline-box.is05 p {
    font-size: 14px;
  }
  .outline-box.is02 p.isMain,
  .outline-box.is05 p.isMain {
    font-size: 18px;
  }

	/* #banner =====================================================*/
	#banner .section-inner{
		width:calc(100% - 30px);
	}
	#banner p{
		margin-top: 40px;
	}
	#banner ul.download {
		margin-bottom: 0;
	}

	/* #detail =====================================================*/
	#detail{
		margin-top: 40px;
		margin-bottom: 40px;
	}
	#detail p{
		width: 100%;
		max-width:380px;
		margin:0 auto;
	}
	#detail p a{
		display:block;
	}

	/* #notes =====================================================*/
	#notes{
		margin-top: 15px;
		padding-bottom: 60px;
	}
	#notes .list{
		width:fit-content;
		margin:0 auto;
	}
	#notes .list li{
		font-size:14px;
	}
}
