@charset "utf-8";
/* CSS Document */
/********************************************************************
	layout.css
*********************************************************************/

/* clearfix */
.cf {
	zoom:1;
}
.cf:before, .cf:after {
	content: "";
	display: table;
}
.cf:after {
	clear:both;
}

/*--- リンク ---*/
a:link, a:visited {
	color: #0062a9;
	text-decoration: none;
}
a:hover, a:active {
	color: #e60012;
	text-decoration:underline;
}
/*-- PDFマーク --*/
.pdf::after {
  font-family: 'FontAwesome';
  content: "\f1c1";
  margin-left: 5px;
}

/*--- ページトップ ---*/
#pagetop {
	position: fixed;
  bottom: 30px;
  right: 10px;
	z-index:10;
}
#pagetop a {
  display: block;
  color: #FFFFFF;
  height: 35px;
  line-height: 35px;
  width: 35px;
  text-align: center;
  background-color: #ff0066;
  /*border-radius: 4px;*/
}

/*--- フルードイメージ ---*/
/* 拡大縮小 */
.fluidimg {
	width: 100%;
	max-width: 100%;
	height:auto;
}
/* 画像サイズ内で縮小 */
.fluidimg2 {
	width: auto;
	max-width: 100%;
	height:auto;
}

html {
	width:100%;
}
body {
	width: 100%;
  	font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background-color: #f5e1df;
}
img {
  vertical-align: bottom;
}

/*==========================================================================
	レイアウト
============================================================================*/
#wapper {
	width:100%;
	color: #000000;
	font-size: 16px;
  	line-height: 2.0;
}
.sp_none {
	display:none;
}
/*-- ボタン --*/
.btnA {
  margin: 20px auto;
}
.btnA a {
  text-align: center;
  color: #FFFFFF;
  background-color: #ff0066;
  line-height: 1.2;
  font-weight: bold;
  font-size: 16px;
  padding: 15px 10px;
  display: block;
  transition: .2s linear;
  position: relative;
	border-radius: 8px;
}
.btnA a:after {
  font-family: 'FontAwesome';
  content: "\f0da";
  position: absolute;
  right: 10px;
	 top: 50%;
	margin-top: -.5em;
}
/*--- リンク ---*/
.btnA a:link, .btnA a:visited {
	color: #FFFFFF;
	text-decoration: none;
}
.btnA a:hover, .btnA a:active {
	color: #FFFFFF;
	text-decoration: none;
  background-color:#ffc600;
}

/*-- ボタン --*/
.btnB {
  margin: 40px auto;
}
.btnB a {
  text-align: center;
  color: #FFFFFF;
  background-color: #6699ff;
  line-height: 1.2;
  font-weight: bold;
  font-size: 19px;
  padding: 20px 10px;
  display: block;
  transition: .2s linear;
  position: relative;
	border-radius: 8px;
}
.btnB a:after {
  font-family: 'FontAwesome';
  content: "\f0da";
  position: absolute;
  right: 10px;
	 top: 50%;
	margin-top: -.5em;
}
/*--- リンク ---*/
.btnB a:link, .btnB a:visited {
	color: #FFFFFF;
	text-decoration: none;
}
.btnB a:hover, .btnB a:active {
	color: #FFFFFF;
	text-decoration: none;
  background-color:#a2c3f9;
}
/*--- タイトル ---*/
.titleA {
  	/*font-family: "Sawarabi Mincho";*/
	font-family: 'Noto Serif JP', serif;
	/*font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;*/
  	font-size: 26px;
  	line-height: 1.6;
  	font-weight: bold;
	margin-bottom: 50px;
}
.titleA span {
	font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 16px;
  	color: #ff0066;
	background-color: #ece4ee;
	border-radius: 15px;
	padding: 4px 5px;
	line-height: 1;
	display: block;
	max-width: 120px;
	margin-bottom: 15px;
	text-align: center;
}
.titleB {
  	/*font-family: "Sawarabi Mincho";*/
	font-family: 'Noto Serif JP', serif;
	/*font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;*/
  	font-size: 20px;
  	line-height: 1.4;
  	font-weight: bold;
	color: #FFFFFF;
	background-color: #ff0066;
	margin-bottom: 10px;
	text-align: center;
	padding: 10px;
	border-radius: 6px;
	/*border-bottom: 3px solid #ff0066;*/
}

.capTxt {
	font-size: 12px;
	margin: 30px 0;
}
/*-- msg --*/
.msg_A {
  	/*font-family: "Sawarabi Mincho";*/
	font-family: 'Noto Serif JP', serif;
	/*font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;*/
  	font-size: 26px;
  	line-height: 1.6;
  	font-weight: bold;
}

/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
  #wapper {
  }
  .sp_none {
	  display:block;
  }
  .tb_none {
	  display:none;
  }
  .titleB {
		font-size: 32px;
  }

}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
  #wapper {
  }
  .tb_none {
	  display:block;
  }
  .pc_none {
	  display:none;
  }

}

/*==========================================================================
	ヘッダー
============================================================================*/
#header {
	background-color: #ff0066;
	padding: 4px;
	max-width: 600px;
	margin: 0 auto;
	box-sizing: border-box;
}
#header #headerinnr {
	text-align: center;
}
#header a:link, #header a:visited {
	color: #FFFFFF;
	text-decoration: none;
}
#header a:hover, #header a:active {
	color: #FFFFFF;
	text-decoration:underlineu;
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
  #header #headerinnr {
  }
}

/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
  #header #headerinnr {
  }
}
/*==========================================================================
	コンテンツラッパー
============================================================================*/
.contentsWap {
	max-width: 600px;
	margin: 0 auto;
	background-color: #FFF;
}

/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.contentsWap {
	}
}

/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
  	.contentsWap {
	}
}
/*==========================================================================
	メイン画像
============================================================================*/
.mainimg {
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
  .mainimg {
  }
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
	.mainimg {
		padding: 0px;
    	max-width: 600px;
    	margin: 0px auto;
	}
}

/*==========================================================================
	
============================================================================*/
.storyBlock01 {
	padding: 50px 0;
}
.storyBlock01 .storyBlock01innr {
	padding: 0 5.0%;
}
.storyBlock01 .storyBlock01innr p {
	margin-bottom: 15px;
}
/* 黄マーカライン */
.storyBlock01 .storyBlock01innr em {
	background: linear-gradient(transparent 65%, #f6fb6e 65%);
	font-style:normal;
}
.storyBlock01 .ttl {
	font-size: 20px;
	font-family: "Sawarabi Mincho";
	line-height: 1.6;
  	font-weight: normal;
	text-align: center;
	margin-bottom: 30px;
}
/* タイトル */
.storyBlock01 .ttl span {
	font-size: 34px;
	color: #ff0066;
}
.storyBlock01 .ttl2 {
	font-size: 21px;
	font-family: "Sawarabi Mincho";
	line-height: 1.6;
  	font-weight: normal;
	padding: 0 0 0 10px;
	border-left: 4px solid #ff0066;
	margin-bottom: 35px;
}
/* リスト */
.listboard {
	background-color: #FFF;
	box-shadow: 0px 0px 16px rgb(0 0 0 / 7%);
	padding: 20px;
	list-style: none;
	margin: 30px 0;
}
.listboard li {
	font-size: 22px;
	font-weight: bold;
	position: relative;
	padding: 12px 0 12px 1.8em;
	margin: 0;
	border-bottom: 1px solid #cccccc;
}
.listboard li:last-child {
	border-bottom: none;
}
.listboard li::before {
  position: absolute;
  left: 0;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: '\f044';
  color: #ff0066;
}
.listboard2 {
	list-style: none;
	margin: 30px 0;
}
.listboard2 li {
	font-size: 14px;
	position: relative;
	padding: 20px 20px 20px 40px;
	margin: 15px 0;
	border-radius: 16px;
	border: 3px solid #efd836;
	box-shadow: 0px 0px 16px rgb(0 0 0 / 7%);
}
.listboard2 li::before {
  position: absolute;
  left: 20px;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: '\f044';
  color: #ff0066;
}

/* flow　リスト */
.flowlist {
	margin-bottom: 10px;
}
.flowlist li {
	background-color: #FFF;
	border-radius: 8px;
	padding: 15px 10px;
	position: relative;
	margin: 10px 0 40px;
	list-style: none;
	text-align: center;
	box-shadow: 0px 0px 16px rgb(0 0 0 / 7%);
}
.flowlist li::after {
	content: "▼";
	display: block;
	font-size: 20px;
	position: absolute;
	bottom: -30px;
	left: 0;
	right: 0;
	color: #f80058;
}

.flowlist li:last-child {
	margin-bottom: 10px;
}
.flowlist li:last-child::after {
	content: "";
}
/* flow　リスト2 */
.flowlist2 {
	margin-bottom: 10px;
}
.flowlist2 li {
	background-color: #FFF;
	border-radius: 8px;
	padding: 15px;
	position: relative;
	margin: 10px 0 40px;
	list-style: none;
	text-align: left;
	box-shadow: 0px 0px 16px rgb(0 0 0 / 7%);
}
.flowlist2 li .flttl {
	font-weight: bold;
	color: #ff0066;
}
.flowlist2 li::after {
	content: "▼";
	display: block;
	font-size: 20px;
	position: absolute;
	text-align: center;
	bottom: -30px;
	left: 0;
	right: 0;
	color: #f80058;
}

.flowlist2 li:last-child {
	margin-bottom: 10px;
}
.flowlist2 li:last-child::after {
	content: "";
}

.flowlist3 {
	margin-bottom: 10px;
}
.flowlist3 li {
	background-color: #FFF;
	border-radius: 16px;
	padding: 18px 10px;
	position: relative;
	margin: 10px 0 40px;
	list-style: none;
	text-align: center;
	box-shadow: 0px 0px 16px rgb(0 0 0 / 7%);
	font-weight: bold;
	font-size: 18px;
	border: 3px solid #00b379;
}
.flowlist3 li .wappr {
	display: flex;
	justify-content:space-between;
	align-items: center;
}
.flowlist3 li .wappr .pic {
	text-align: center;
	width: 50%;
}
.flowlist3 li .wappr .txt {
	text-align: left;
	width: 49%;
	font-size: 12px;
}
.flowlist3 li:nth-child(1)::after {
	content: url("../img/arrow01.png");
	display: block;
	position: absolute;
	z-index: 2;
	/*bottom: -30px;*/
	left: 0;
	right: 0;
}
.flowlist3 li:nth-child(2)::after {
	content: url("../img/arrow02.png");
	display: block;
	position: absolute;
	z-index: 2;
	/*bottom: -30px;*/
	left: 0;
	right: 0;
}
.flowlist3 li:nth-child(3)::after {
	content: url("../img/arrow03.png");
	display: block;
	position: absolute;
	z-index: 2;
	/*bottom: -30px;*/
	left: 0;
	right: 0;
}
.flowlist3 li:last-child::after {
	content: "";
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.flowlist3 li .wappr .pic {
		text-align: center;
		width: 45%;
	}
	.flowlist3 li .wappr .txt {
		text-align: left;
		width: 54%;
		font-size: 16px;
	}
}

/* theme　リスト  */
.themelist {
	margin-bottom: 10px;
}
.themelist li {
	background-color: #FFF;
	border-radius: 8px;
	padding: 10px;
	position: relative;
	margin: 20px 0;
	list-style: none;
	text-align: center;
	box-shadow: 0px 0px 16px rgb(0 0 0 / 7%);
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.themelist li.b01 {
	border: 4px solid #9999cc;
}
.themelist li.b02 {
	border: 4px solid #cccc33;
}
.themelist li.b03 {
	border: 4px solid #ff9999;
}						
.themelist li.b04 {
	border: 4px solid #6699ff;
}
.themelist li.b05 {
	border: 4px solid #66cc99;
}
.themelist li.b06 {
	border: 4px solid #666666;
}
.themelist li.b07 {
	border: 4px solid #cc99cc;
}
.themelist li.b08 {
	border: 4px solid #996666;
}
.themelist li .tmicon {
	display: block;
	width: 30%;
}
.themelist li p {
	width: 65%;
}
/* theme　リスト(2)  */
.themelist2 {
	margin-bottom: 10px;
}
.themelist2 li {
	background-color: #FFF;
	border-radius: 8px;
	padding: 10px 10px;
	position: relative;
	margin: 20px 0;
	list-style: none;
	text-align: center;
	box-shadow: 0px 0px 16px rgb(0 0 0 / 7%);
}
.themelist2 li .boxwap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 10px;
}
.themelist2 li .boxwap .tmicon {
	display: block;
	width: 30%;
}
.themelist2 li .boxwap .msg {
	font-weight: bold;
	color: #ff0066;
	text-align: left;
	width: 67%;
	font-size: 15px;
	line-height: 1.4;
}
.themelist2 li .msg2 {
	font-size: 11px;
	text-align: left;
	margin-bottom: 10px;
}
.themelist2 li .box02 {
	font-size: 13px;
	text-align: left;
}
.themelist2 li.b01 {
	border: 4px solid #9999cc;
}
.themelist2 li.b02 {
	border: 4px solid #cccc33;
}
.themelist2 li.b03 {
	border: 4px solid #ff9999;
}						
.themelist2 li.b04 {
	border: 4px solid #6699ff;
}
.themelist2 li.b05 {
	border: 4px solid #66cc99;
}
.themelist2 li.b06 {
	border: 4px solid #666666;
}
.themelist2 li.b07 {
	border: 4px solid #cc99cc;
}
.themelist2 li.b08 {
	border: 4px solid #996666;
}

/*-- イントロメッセージ --*/
.intoromsg {
	font-family: "Sawarabi Mincho";
  	font-size: 16px;
  	line-height: 1.6;
  	font-weight: normal;
	text-align: center;
	padding-bottom: 60px;
}


/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.listboard li {
		font-size: 16px;
	}
	/* theme　リスト(2)  */
	.themelist2 li .box02 {
		font-size: 13px;
		text-align: center;
	}
	.themelist2 li .boxwap .msg {
		font-size: 16px;
		line-height: 1.8;
	}
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {

}

/*==========================================================================
	
============================================================================*/
.productBlock {
	/*margin: 0 0 50px;*/
	background-color: #f8ecec;
}
.productBlock .productBlockinnr {
	padding: 0 6.5% 20px;
}
.productBlock .productBlockinnr p {
	margin-bottom: 15px;
}
.productBlock .productBlockinnr .price {
	font-size: 36px;
	font-weight: bold;
	line-height: 1.6;
}
.productBlock .productBlockinnr .price span {
	font-size: 22px;
	font-weight: normal;
}
.productBlock .productBlockinnr .prodbord {
	background-color: #FFFFFF;
	border-radius: 20px;
	border: 2px solid #ff0066;
	box-shadow: 0px 0px 18px rgb(0 0 0 / 12%);
	padding: 10px 10px 5px;
	margin: 25px 0 15px;
	position: relative;
}
.productBlock .productBlockinnr .prodbord .step {
	/*position: absolute;
	z-index: 2;
	top: -10px;
	left: -10px;
	width: 80px;
	height: 80px;*/
	/*margin-top: -110px;*/
	margin-bottom: 20px;
}
.productBlock .promsg1 {
	padding: 5px 2px;
	text-align: left;
	font-weight: bold;
	color: #000000;
	font-size: 13px;
	line-height: 1.4;
}
.productBlock .promsg2 {
	text-align: center;
	font-size: 19px;
	font-weight: bold;
	line-height: 1.4;
}
.productBlock .promsg3 {
	padding: 2px;
	text-align: center;
	font-weight: bold;
	color: #000000;
	font-size: 16px;
	line-height: 1.4;
}

/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.productBlock .productBlockinnr .prodbord .step {
		/*position: absolute;
		z-index: 2;
		top: -10px;
		left: -10px;
		width: 120px;
		height: 120px;*/
	}
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {

}

/*==========================================================================
	
============================================================================*/
.presentBlock {
	padding: 30px 0;
	background-color: #eff8ed;
}
.presentBlock .ttl2 {
	font-size: 26px;
	font-family: "Sawarabi Mincho";
	line-height: 1.6;
  	font-weight: normal;
	padding: 0 0 0 20px;
	border-left: 4px solid #ff0066;
	margin-bottom: 35px;
}
.presentBlock .presentBlockinnr {
	padding: 0 6.5%;
}
.presentBlock .presentBlockinnr p {
	margin-bottom: 15px;
}

.presentBlock .presentBlockinnr .price {
	font-size: 36px;
	font-weight: bold;
	line-height: 1.6;
}
.presentBlock .presentBlockinnr .price span {
	font-size: 22px;
	font-weight: normal;
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {

}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {

}
/*==========================================================================
	お客様の声
============================================================================*/
.voiceBlock {
	padding: 30px 0;
}

.voiceBlock .voiceBlockinnr {
	padding: 0 5.0%;
}
.voiceBlock .voiceBlockinnr .ttlA {
	font-family: 'Noto Serif JP', serif;
  	font-size: 22px;
  	line-height: 1.6;
  	font-weight: bold;
	text-align: center;
	margin-bottom: 50px;
}
.voiceBlock .voiceBlockinnr .voiceopenbtn {
	padding: 15px 5px;
	margin: 5px 0;
	color: #FFF;
	background-color: #FD3E91;
	cursor: pointer;
	border-radius: 5px;
	font-weight:bold;
}
.voiceBlock .voiceBlockinnr .voiceopenbtn:hover {
	background-color: #FC7A7C;
}
.voiceBlock .voiceBlockinnr .voiceList {
	list-style: none;
}
.voiceBlock .voiceBlockinnr .voiceList li {
	padding: 10px;
	border: 1px solid #CCCCCC;
	border-radius: 15px;
	margin-bottom: 10px;
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
	
}


/*==========================================================================
	目次
============================================================================*/
.indexBlock {
	padding: 30px 0;
	background-color: #f8f8f8;
}

.indexBlock .indexBlockinnr {
	padding: 0 5.0%;
}
.indexBlock .indexBlockinnr .indexList {
	background-color: #FFF;
	box-shadow: 0px 0px 16px rgb(0 0 0 / 7%);
	padding: 35px;
	list-style: none;
}
.indexBlock .indexBlockinnr .indexList li {
	position: relative;
	padding: 5px 0 5px 25px;
	border-bottom: 1px #CCCCCC dotted;
}

.indexBlock .indexBlockinnr .indexList li::before {
  content: '\f00c';
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 2px;
  left: 0;
  color: green;
}
/*==========================================================================
	フッダー
============================================================================*/
#footer {
  padding: 0px;
	max-width: 600px;
	margin: 0 auto;
}
#footer .footerinnr {
  background-color: #ff0066;
  padding: 10px;
  color: #ffffff;
  text-align: center;
  font-size: 12px;
}
#footer .copy {
  padding: 10px;
  line-height: 1.4;
  text-align: center;
  font-size: 11px;
  background-color: #FFF;
}
#footer a:link, #footer a:visited {
	color: #FFFFFF;
	text-decoration: none;
}
#footer a:hover, #footer a:active {
	color: #FFFFFF;
	text-decoration:underlineu;
}
/*****************************************************
	320px以下【sp】
******************************************************/
@media print, screen and (max-width: 320px) {
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
}
