@charset 'UTF-8';
:root {
	--write-cl: #575757;	
	--original-bg: #A0CDED;
	--original-cl: #85CBD9;
	--ss-bg: #dc8ac1;
	--ss-cl: #dc8ac1;
	--grey-cl: #757575;
}
html{
	font-family: YuGothic-M, YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	line-height: 1.6;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	color: var(--write-cl);
	font-size: 14px;
	word-break: break-all;
	line-break: strict;
}
img {
	pointer-events: none; 
	-webkit-touch-callout:none;
	-webkit-user-select:none;
	-moz-touch-callout:none;
	-moz-user-select:none;
	touch-callout:none;
	user-select:none;
}
.right-click-none{
	user-select:none;
	-webkit-user-select:none;	// Google Chrome、Safari
	-webkit-user-drag:none;
	-moz-user-select:none;	// Firefox
	-khtml-user-select:none;
	-khtml-user-drag:none;
}
.touch-action-panxy{
	touch-action: pan-x pan-y;
}
.font-rounded{
	font-family: 'M PLUS Rounded 1c', sans-serif;
}
.yomogi-regular{
	font-family: "Yomogi", cursive;
	font-weight: 400;
	font-style: normal;
}
.zen-kaku-gothic-antique-regular {
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	font-weight: 400;
	font-style: normal;
}

.copyban{
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.adimage{
	display: block;
}
img.adm{
	display: block;
	box-shadow: 0 2px 8px 0 rgba(136, 136, 136, 0.5);
	padding: .5em 0;
	margin: .8em 0 1.2em;
	width: 100%; height: auto;
}
img.adm_s{
	display: block;
	box-shadow: 0 2px 8px 0 rgba(136, 136, 136, 0.5);
	padding: .5em 0;
	margin: .8em 0 1.2em;
	width: 70%; height: auto;
}
img.sample-img{
	border: 1px solid #dcdcdc;
	margin: 1em 0;
	height: auto;
	display: block;
	max-width: 500px;
}
.sp_only, .sp_tab_only{
	display: block;
}
.tab_only, .tab_pc_only, .pc_only{
	display: none;
}
.single_column {
}
.single_column main{
	max-width: 64em;
	margin: 1em auto;
	padding: 1em;
	border-top: 1px solid #ddd;
}
a:hover{
	opacity: .8;
	transition: .4s;
}
q{
	font-style: oblique;
	font-weight: bold;
	background: #F3F3F3;
	border-left: 3px solid #E8E8E8;
	border-right: 3px solid #E8E8E8;
	margin: .5em 0;
	padding: .8em;
	display: inline-block;
}
/*list*/
.list-box{
	padding: 1em 0;	
}
ul{
	padding-left: 1em;	
}
li{
}

ul.disc-list, ul.base-disc-list, ul.exp-disc-list{
	list-style-type: disc;
}
ul.disc-list-small{
	list-style-type: disc;
	font-size: .9em;
}
ul.circle-list{
	list-style-type: circle;
}
ul.decimal-list{
	list-style-type: decimal;
}
ul.disc-list li, ul.circle-list li{
	padding-bottom: 1em;
	line-height: 1.6;
}
ul.disc-list li:last-child{
	padding-bottom: 0;
}
ul.exp-disc-list li{
	font-size: .8em;
	padding-bottom: 0;
}

.count-list-box{
	padding: 1em 0;
}
ol{
	list-style-type: decimal;	
}
ol.count-list{
	padding-left: 1.6em;
}
ol.count-list li{
	padding-bottom: 1.5em;
	line-height: 1.5;
}
ol.count-list li:last-child{
	padding-bottom: 0;
}

ol.count-list li::marker{
	font-weight: bold;
}

.list-grid {display:grid;justify-items:center;}
.list-grid ol, .list-grid ul {margin-top:0;margin-bottom:0;padding-left:0;}

.count-list-item{
	margin-bottom: 3em;
	align-items: stretch;
}
.count-list-item .empi p{
	font-weight: bold;
	font-size: 1.2em;
	padding: .4em .8em!important;
}
.count-list-item .empi p:first-child{
	color: #fff;
	background: #67a79a;
	display: flex;
	align-items: center;
}
.count-list-item .empi p:last-child{
	background: #f9f5f2;
	color: #5d5252;
	width: 100%;
}

/* ===== Keyframes ===== */
@keyframes fadeInUp {
	from {
	opacity: 0;
	transform: translate3d(0, 20px, 0);
	}
	to {
	opacity: 1;
	transform: none;
	}
}
@keyframes fadeOut {
	from {
	opacity: 1;
	}

	to {
	opacity: 0;
	}
}
/*ふわっと移動*/
@keyframes pagemove{
 	0%{
		opacity: 0;
  	}
	100%{
		opacity: 1;
	}
}
.PageMove{
	animation: pagemove 1s forwards;
}

/*------------本文------------*/
body#MAIN{
}
.adjust{
	max-width: 64em;
	margin: 0 auto;
}
/*header*/
body#MAIN header{
/*	background: url(../images/header.jpeg);
	background-size: cover;*/
}
body#MAIN header#contact{
	border-bottom: 1px solid #dcdcdc;
	padding-bottom: .5em;
}
header #head{
	margin: 0 auto;
}
body#MAIN header #head{
	margin: 2em .5em 1em;
}
body#MAIN header#mailform{
	padding-bottom: .8em;
	border-bottom: 1px solid #ddd;
}
body#MAIN header #head a#logolink{
}
body#MAIN #headlogo{
}
body#MAIN #headlogo .kana{
	font-family: 'Yomogi', cursive;
	font-size: .7em;
	text-align: center;
	line-height: 1.6;
	margin-top: 1em;
}
body#MAIN #headlogo #MainLogo{
	position: relative;
	line-height: 1.8em;
}
body#MAIN #MainLogo h1#logo{
	/*font-size: 1.7em;
	font-family: 'Poiret One', sans-serif;
	display: inline-block;*/
	background: url(https://novelcake.net/images/logo.png) no-repeat;
	background-size: contain;
	width: 8.2em;
	height: 2em;
}
body#subpage #MainLogo h1#logo{
	background: url(https://novelcake.net/images/logo.png) no-repeat;
	background-size: contain;
	width: 8em;
	height: 1.6em;
}
/*body#MAIN #MainLogo h1#logo img{
	width: 7.2em;
	height: auto;
}
body#MAIN #headlogo #MainLogo span{
	display: inline-block;
	position: absolute;
	top: 6%;
	white-space: nowrap;
	left: 98%;
	font-weight: bold;
	font-size: 1.2em;
}
body#MAIN #headlogo #MainLogo span:hover{
	transition: .6s;
	transform: rotate(24deg);
}
*/
/*botu*/
body#BOTU #MainLogo h1#logo{
	background: #fff;
	border: 1px solid #fff;	/* 線の太さ・種類・色 */
	margin: 5px 0;	/* 外側の余白 上下・左右 */
	padding: .2em 0 .2em .4em;	/* 内側の余白 */
	position: relative;
	font-size: 2em;
	white-space: nowrap;
	z-index: 1;
	background-image: linear-gradient(90deg, transparent 0%, transparent 50%, #fff 50%, #fff 100%), /* 点線1の色 */
	linear-gradient(180deg, #ccc 1px, transparent 1px); /* 点線2の色と太さ */
	background-size: 8px 100%, /* 点線1のサイズ */
					 100% .5em; /* 点線2のサイズ */
	padding-bottom: 1px; /* 最終行の下にも罫線を引く */
text-shadow: #fff 2px 0, #fff -2px 0, #fff 0 -2px, #fff 0 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px;
}
body#BOTU #MainLogo h1#logo:after{
	background-image: linear-gradient(45deg, rgba(200,230,245,0.4) 25%, rgba(256,256,256,.5) 25%, rgba(256,256,256,.5) 50%, rgba(200,230,245,.4) 50%, rgba(200,230,245,.4) 75%, rgba(256,256,256,.5) 75%, rgba(256,256,256,.5) 100%);/*見出しの色*/
	background-size: 2px 2px;/*線の太さ*/
	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,.2);/*見出しの影*/
	padding: 0.5em;/*文字まわりの余白*/
	color: #454545;/*文字色*/
	transform: rotate(0deg);/*見出しの角度*/ 
	content: '';
	position: absolute;
	top: 5px;
	left: 5px;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.error404_message{
	font-size: 4em;
	color: #ddd;
	font-weight: bold;
	padding-bottom: .5em!important;
}

/*
body#MAIN #MainLogo{
	position: relative;
	padding:0.25em 1em;
	margin: 1em .5em .3em;
}
body#MAIN #MainLogo:before, body#MAIN #MainLogo:after{ 
	content:'';
	width: 20px;
	height: 30px;
	position: absolute;
	display: inline-block;
}
body#MAIN #MainLogo:before{
	border-left: solid 1px #fff;
	border-top: solid 1px #fff;
	top:0;
	left: 0;
	transform: rotate(-3deg);
}
body#MAIN #MainLogo:after{
	border-right: solid 1px #fff;
	border-bottom: solid 1px #fff;
	bottom:0;
	right: 0;
	transform: rotate(-3deg);
}
body#MAIN #MainLogo h1#logo{
	font-weight: bold;
	font-size: 2em;
	color: #fff;
	text-stroke: 1px #888;
	padding: 0 0 .2em;
	letter-spacing: 2px;
}

*/

/* search_box 右スライド用スタイル
.head_search_box{
	max-width: 300px;
	margin-left: auto;
	overflow: hidden;
}
.head_search_box i{
	display: block;
	padding-right: .4em;
	font-size: 1.2em;
	border-radius: 0 0 0 10px;
	background: #efefef;
	padding: .4em .5em .8em .5em;
}
*/
/*ページ内検索*/
#pg-search{
	margin: 0 1em;
}
#content_to_search .highlight {
	font-weight: bold;
	color: #333333;
	background-color: Yellow;
	padding: 3px 5px;
}
#content_to_search .current {
	outline: 2px solid crimson;
}
/* 入力フィールドのスタイル - Input Field Styles */
#pg-search input[type="text"] {
	padding: 10px;
	border: 1px solid #ccc;
	border-radius: 5px;
	font-size: 16px;
	width: 100%;
	box-sizing: border-box;
	margin-right: 10px;
	margin-bottom: 10px;
	transition: all 0.3s ease;
}

#pg-search input[type="text"]#searchTerm:focus {
	border-color: #007bff;
	box-shadow: 0 0 8px rgba(0, 123, 255, 0.2);
	outline: none;
}

/* ボタンのスタイル - Button Style */
#pg-search button {
	padding: .4em .8em;
	background: #575757;
	color: #fff;
	border-radius: 5px;
	cursor: pointer;
	transition: background-color 0.3s ease;
	margin-bottom: 10px;
}

#pg-search button:hover {
	background: #727272;
}

#pg-search button:focus {
	outline: none;
	box-shadow: 0 0 8px rgba(195, 195, 195, 0.3);
}

/* ラジオボタンのスタイル -Radio Button Style */
#pg-search .case-sensitivity {
	margin-top: 15px;
	font-size: 14px;
	text-align: left;
}

#pg-search .case-sensitivity label {
	margin-right: 15px;
	font-weight: normal;
}

#pg-search .case-sensitivity input[type="radio"] {
margin-right: 5px;
}


/*head検索*/
.head_search{
	display: block;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-size: .7em;
	overflow: hidden;
	/*width: 200px;margin-right: -200px; transition: 0.4s; background: #efefef;右スライド用スタイル*/
	padding: 1em 0 0 0;
}
.head_search.active {
	margin-right: 0;
	padding-right: .4em;
}
.head_search from{
	text-align: left;
}

header .catch{
	font-size: .6em;
	color: #535353;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	text-align: center;
	padding-bottom: .4em;
}
#headlogo{
}

.regist-button{
	margin-bottom: 1em;
	text-align: right;
	padding-right: .2em;
}
.regist-button a{
	display: inline-block;
	background: #fff;
	padding: .2em .8em;
	font-size: .9em;
	font-weight: bold;
	border-radius: 2px;
}

.head_sub_menu{
	background: #f9f9f9;
	border-top: 1em solid #4b4e50;
}
.head_sub_menu div a{
	display: inline-block;
	color: #575757;
	padding: .5em;
	font-size: .7em;
	white-space: nowrap;
}

#wrapper{
	margin: 0 auto;
	max-width: 64em;	
}

/*nav*/
body#MAIN nav#headnav{
	border-bottom: 1px solid #ddd;
}

nav #headmenu{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	max-width: 64em;
	margin: .6em auto 0;
	-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		align-items: center;
	overflow-x: auto;
}
nav .menu-item{
}
nav .menu-item a, nav .menu-item span{
	display: block;
	text-align: center;
	padding: 1em 1.2em;
	white-space: nowrap;
	font-size: .7em;
	border: none;
	font-family: 'M PLUS Rounded 1c', sans-serif;
}

nav .menu-item span:hover{
	cursor: pointer;
}
nav .menu-item a:hover{
}
nav .menu-item a i,nav .menu-item span i{
	font-size: 1.6em;
}
nav ul#nav_novel_menu{
	position: absolute;
	top: 3.6em;
	display: none;
	padding-left: 0;
	z-index: 2;
	background: #ffffff;
}
nav ul#nav_novel_menu.active{
	opacity: 1;
	display: block;
}
nav ul#nav_novel_menu li{
	padding: 1px;
}
nav ul#nav_novel_menu li a{
	border: 1px solid #ebebeb;
	border-radius: 3px;
	padding: 1em 2em;
	font-size: .9em;
}

.user_config_button {
	text-align: right;
	margin-right: .4em;
}
.login_button a, .mypage_button form button{
	display: inline-block;
	font-size: .9em;
}
.mypage_button form button{
	margin-right: .5em;
}
.login_button a{
	color: #ca365f;
}
.mypage_button form button{
	color: #36a3ca;
	text-decoration: underline;
}
.logout_button a{
	display: inline-block;
	color: #575757;
	text-align: center;
	text-decoration: underline;
	padding: .2em .2em .5em .2em;
	font-size: .8em;
}
.log_in_out_ad{
	padding-top: 4em;
}

.bg-wrap{
	background: #f9f9f9;
}

/*main*/
main{
	width: 100%;
}
/*パンくずリスト*/
#breadcrumb {
	padding: 1em 0 1em 0;
	font-size: .8em;
}

#breadcrumb li{
	display: inline-block;
}
#breadcrumb li a, #breadcrumb li button {
	display: inline-block;
}
#breadcrumb li button {
	color:#568e7f;
}
#breadcrumb li a:after, #breadcrumb li button:after{
	font-family: 'Font Awesome 6 Free';
	padding: .8em;
	font-weight: 900;
	color: #efe9e3;
	content: "\f054";
	font-size: .8em;
}
#breadcrumb li a:hover {
}
#breadcrumb li span {
	font-size: .8em;
	width: 200px;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis; /* Safari */
	-o-text-overflow: ellipsis; /* Opera */
}

#pageTitle{
	padding: 2em 0 .8em .5em;
}
#pageTitle h1 {
	text-shadow: #fff 2px 0, #fff -2px 0, #fff 0 -2px, #fff 0 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px;
	font-size: 1.5em;
	position: relative;
	z-index:1;
}
#pageTitle h1:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 8px;
	background: -webkit-repeating-linear-gradient(-45deg, #f0f0f0, #f0f0f0 2px, #fff 2px, #fff 4px);
	background: repeating-linear-gradient(-45deg, #f0f0f0, #f0f0f0 2px, #fff 2px, #fff 4px);
	z-index: -1;
}

/*A*/
main a{
	color: #568e7f;
}
/*本文*/
#contents{
	max-width: 64em;
	margin: 0 auto;
	padding: 0;
	position: relative;
}

.textBox{
}
.textBox p:not(:last-child){
	padding-bottom: 1em;
}
.textBox h2{
}
.textBox h2 + p, .textBox h2 + div, .textBox h2 + ol, .textBox h2 + ul{
	padding-top: 2em;
}
.text{
	padding: 1.5em .4em 1em;
}
.text h4{
}

.articleBox{
	padding: 0 0 2em 0;	
}
.articleBox article > h1{
	padding-bottom: .5em;
}
.articleBox .textBox{
}
.sectionBox{
	padding: 1em 0 2em;
}
.sectionBox .textBox{
	padding: 1em 0 2.4em;
}

.center_text_box{
	max-width: 350px;
	margin: 0 auto;
	padding: 0 .4em;
}

.opening{
	font-size: .9em;
	font-family: 'M PLUS Rounded 1c', sans-serif;
}

.emp{
	background: #fff6d6;
	padding: 0.5em!important;
}

.success-msg {
	display: none;
	position: fixed;
	width: 300px;
	height: 40px;
	line-height: 40px;
	background-color: #29aba4;
	color: #fff;
	top: 100px;
	left: 0;
	right: 0;
	margin: auto;
	text-align: center;
	border-radius: 5px;
}

/*index*/
.index_box{
	padding: 1em .5em 3em;
}
.index_text{
	width: 100%;
	border: 1px solid #dcdcdc;
	border-radius: 10px;
	padding: 1em .5em;
	background: #f9f9f9;
}
.index_text h2{
	padding-bottom: .4em;
}
.index_text ul:not(:last-child){
	padding-bottom: 2.4em;
}

.index_text ul li{
	padding-bottom: .8em;
}
.index_text ul li a{
	font-weight: bold;
	color: #6f7372;
	border-bottom: .5px solid;
}
.index_text ul li a:before{
	content: "\f0d7";
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	padding-right: .2em;
}
.index_text ul li ul.inul li a:before{
	content: "\f0da";
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	padding-right: .4em;
}

/*pankuzu*/
.pankuzu{
	padding: 0 0 2em .5em;
}
.pankuzu form button{
	padding: 0;
	color: #568e7f;
}
.pankuzu form{
	display: inline-block;
}
.pankuzu p, .pankuzu form button{
	display: inline-block;
	font-size: .8em;
}
.pankuzu p::before{
	padding-left: .5em;
	content: "> ";
}
.pankuzu p:first-child::before, .pankuzu .first::before{
	content: "";
}


/*使い方*/
#How_Chart .textBox h2{
	position: relative;
	background: #f1f8ff;
	padding: 0.25em 0.5em;
	border-left: solid 2em #5c9ee7;
}
#How_Chart .textBox h2:before{
	font-family: "Font Awesome 6 Free";
	position: absolute;
	padding: 0em;
	color: white;
	font-weight: 900;
	left: -1.6em;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
#How_Chart .textBox h2.write:before{
	content: "\f303";
}
#How_Chart .textBox h2.read:before{
	content: "\f02d";
}
#How_Chart .textBox h2.question:before{
	content: "\3f";
}
#How_Chart .textBox h2.search:before{
	content: "\f002";
}
#How_Chart .textBox h3{
	padding: .2em .4em;
	border-width: 2px 0;
	border-style: solid;
	border-color: #86b3e4;
	display: inline-block;
	font-size: 1.1em;
}
#How_Chart .textBox h4{
	border-left: 8px solid #ddd;
	padding-left: .5em;	
	margin-top: 1em;
}

/*HELP*/
#Help_Chart .textBox h2{
	position: relative;
	background: #eff4ff;
	padding: 2px 5px 2px 2.4em;
	border-radius: 20px 10px 10px 20px;
	font-size: 1.3em;
}
#Help_Chart .textBox h2:before{
	font-family: "Font Awesome 6 Free";
	content: "\f128";
	display: inline-block;
	line-height: 40px;
	position: absolute;
	margin-left: 1.2em;
	padding: 0em;
	color: white;
	background: #81a1e4;
	font-weight: 900;
	width: 40px;
	text-align: center;
	height: 40px;
	left: -1.35em;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	border-radius: 50%;
	box-shadow: 0px 2px 1px rgba(0, 0, 0, 0.29);
	border-bottom: solid 2px #4967b4;
}
#Help_Chart .textBox h3.lightpop{
	position: relative;
	padding-left: 35px;
}
#Help_Chart .textBox h3.lightpop:before{
	position: absolute;
	font-family: "Font Awesome 6 Free";
	content: "\f0eb";
	background: #ffca2c;
	color: white;
	font-weight: 900;
	font-size: 15px;
	border-radius: 50%;
	left: 0;
	width: 25px;
	height: 25px;
	line-height: 25px;
	text-align: center;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
#Help_Chart .textBox h3.lightpop:after{
content: '';
	display: block;
	position: absolute;
	left: 20px;
	height: 0;
	width: 0;
	border-top: 7px solid transparent;
	border-bottom: 7px solid transparent;
	border-left: 12px solid #ffca2c;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.sampleNo{
	display: inline-block;
	background: #E21E9B;
	color: #fff;
	padding: 0 .2em;
	font-weight: bold;
}

/*side*/
.pc_only_flex #side{
	padding: 1em 0 3em;
}
.pc_only_flex #side ul{
	padding: 0;
}

.tab_pc_flex #side{
	margin: 0;
	padding: 1em 0;
	background: #f5f5f5;
}
#side > ul{
	padding: 4em 0;
}
#side ul li.side_nav_menu{
	padding-bottom: 2.4em;
}
#side ul li.side_nav_menu h2{
	border-bottom: 1px solid;
	padding-left: .4em;
	font-size: 1.2em;
}
#side ul li.side_nav_menu .menu-side_menu-container{
}
#side ul li.side_nav_menu ul.menu-side_menu{
	padding-left: 0;
}
#side ul li.side_nav_menu ul.menu-side_menu li{
	padding: 0;
}
#side ul li.side_nav_menu ul.menu-side_menu li.widget{
	padding-bottom: 2em;
}
#side ul li.side_nav_menu ul.menu-side_menu li:first-child a,
#side ul li.side_nav_menu ul.menu li:first-child a
{
	margin-top: 1em;
}
#side ul li.side_nav_menu ul.menu-side_menu li a{
	display: block;
	padding: .5em 0 .5em .5em;
	border-bottom: dotted 1px #ddd;
}
#side ul li.side_nav_menu ul.menu-side_menu li a:hover{
	background: #dcdcdc;
	transition: all 0.4s;/*アニメーション速度*/
}

/*検索*/
#searchform div{
	padding: 1em 0;
	display: flex;
	justify-content: center;
}
input[type="search"]{
	border: 1px solid rgba(0, 0, 0, .15);
	border-radius: .25rem;
	text-align: left;
}
.more-search-text{
	font-size: .9em;
}

.adimage_tate{
	display: none;
}
.adimage_yoko{
	width: auto;
	height: 240px;
	margin: 0 auto;
}
#side .blogcom{
	padding-top: 1em;
}
dl.mycomment {
	width: 100%;
	margin: 0 auto;
	padding: 0 .5em;
	font-size: .9em;
}
dl.mycomment dt{
	text-align: left;
	clear: left;
	float: left;
	width:40px;
	white-space: nowrap;
 	padding-top: 16px;
}
dl.mycomment dd{
	margin-left: 0;
	padding: 1px 0 5px 0;
	border-bottom: #C3CDCE 2px dotted;
 	padding-top: 16px;
}
dl.mycomment dd:last-child{
	border-bottom: #fff 0px dotted;
}
dl.mycomment dd span.my_author{
	font-weight: 600;
}
dl.mycomment dd span.my_comments_content{
	font-size:14px;
}
.blogdate{
	display: block;
	text-align: right;
}


/*footer*/
footer{
	padding-bottom: 3em;
	background: #717171;
	color: #fff;
	text-align: center;
}
#footnav{
	padding:1em;
}
#footnav #footmenu .menu-item a{
	font-size: .9em;
}

/*----------基本設定----------*/
#pagetop {
	position: fixed;
	bottom: 0; right: 0;
}
#pagetop a{
	display: block;
	text-decoration: none;
	font-weight: bold;
	font-size: 11px;
	border-radius: 50% 0 0 0;
	padding: 3em;
	box-sizing: border-box;
	color: #c6c6c6;
	box-shadow: 0 1px 3px rgba(0,0,0,0.6);
	background: rgba(255,255,255,.8);
}
#pagetop a::before {
	content: "\f102";
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	position: absolute;
	top: 16px;
	left: 0;
	width: 100%;
	text-align: center;
	font-size: 20px;
	color: #c6c6c6;
}
#pagetop a::hover {
	opacity: 0.7;
}

/*投稿ガイド*/
dl.desc{
	margin:2em 0 0 0;
}
.home dl.desc{
	text-align: center;
}
dl.desc dt{
	font-weight: bold;
	font-size: 1.1em;
}
dl.desc dt a{
	color: #393939;
	text-decoration: underline;
}
dl.desc dd{
	margin: 0 0 1.5em 1em;
}
.home dl.desc dd{
	margin: 0 auto 2em;
	width: 70%;
}

/*form周り*/
#formWrap{
	padding: 2em .4em;
}
#formWrap h1.form_error_h1{
	text-align: center;
}
#formWrap .form_error_text{
	padding: 1em 0 3em;
}
#formWrap .error-list{
	padding: 2em 0;
}
#formWrap .error-list ol{
	width: fit-content;
	margin: 0 auto;
}
#formWrap .error-list ol li:last-child{
	padding-bottom: 0;
}
input, textarea, select{
	max-width: 100%;
	padding: 1px .2em;
	background: #fff;
}
textarea{
/*	field-sizing: content;
	min-height: 5em;*/
}
input[type="text"], input[type="email"], input[type="password"], textarea {
		border: 1px solid rgba(0, 0, 0, .15);
		border-radius: .25rem;
}
input[type="text"].text-nonstyle{
	border:none;
	padding: 0;
	background: none;
}
.readonly{
	background: #f0f0f0;
	color: #b5b2b2;
}

.bbpnone{
	border: none;
	background: transparent;
	padding: 0;
}
select{
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	display: block;
	font-weight: 400;
	color: #444;
	line-height: 1.3;
	padding: .6em 1.4em .5em .8em;
	width: 100%;
	max-width: 100%; 
	border: 1px solid #aaa;
	box-shadow: 0 1px 0 1px rgba(0,0,0,.04);
	border-radius: .5em;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background-color: #fff;
	background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'),
	linear-gradient(to bottom, #ffffff 0%,#e5e5e5 100%);
	background-repeat: no-repeat, repeat;
	background-position: right .7em top 50%, 0 0;
	background-size: .65em auto, 100%;
}
select::-ms-expand {
	display: none;
}
select:hover {
	border-color: #888;
}
select:focus {
	border-color: #aaa;
	box-shadow: 0 0 1px 3px rgba(59, 153, 252, .7);
	box-shadow: 0 0 0 3px -moz-mac-focusring;
	color: #222; 
	outline: none;
}
select option {
	font-weight:normal;
}

/*checkbox*/
input[type="checkbox"] {
	display: none;
}
.check label {
	position: relative;
	display: inline-block;
	padding: 3px 3px 3px 22px;
	cursor: pointer;
	-webkit-transition: all .2s;
	transition: all .2s;
}
.check label::before,
.check label::after {
	position: absolute;
	content: '';
	-webkit-transition: all .2s;
	transition: all .2s;
}
.check label::before {
	top: 50%;
	left: 0;
	width: 14px;
	height: 14px;
	margin-top: -8px;
	background: #f4f4f4;
	border: 1px solid #ccc;
	border-radius: 3px;
}
.check label::after {
	opacity: 0;
	top: 50%;
	left: 3px;
	width: 8px;
	height: 4px;
	margin-top: -4px;
	border-left: 2px solid #3498db;
	border-bottom: 2px solid #3498db;
	-webkit-transform: rotate(-45deg) scale(.5);
	transform: rotate(-45deg) scale(.5);
}
.check label:hover::before {
	background: #fff;
}
input[type="checkbox"]:checked + label::before {
	background: #fff;
	border: 1px solid #3498db;
}
input[type="checkbox"]:checked + label::after {
	opacity: 1;
	-webkit-transform: rotate(-45deg) scale(1);
	transform: rotate(-45deg) scale(1);
}


/*radio button*/
.radio input[type="radio"] {
	position: absolute;
	/* 誤ったコードに対処するための回避策 */
	white-space: nowrap;
	/* 可能な限り文字サイズを小さくするための処理
	 * (スクリーンリーダー中には height と width が 0 のものを無視するため)
	 */
	width: 1px;
	height: 1px;
	/* オーバーフローしているコンテンツを隠す */
	overflow: hidden;
	/* 要素サイズを変更しうるプロパティのリセット */
	border: 0;
	padding: 0;
	/* 要素のどの部分が表示されるかを定義するもの */
	/* 古いブラウザでは使用できない */
	clip: rect(0 0 0 0);
	/* 最近のブラウザ用
	 * コンテンツを非表示にする設定  */
	clip-path: inset(50%); 
	/* 今現在なぜ-1pxがここで設定されるかは分かっていないそうです。
	 * それに加えていくつか問題もあるそうです 
	 * (参考: https://github.com/h5bp/html5-boilerplate/issues/1985)
	 */
	margin: -1px;
}
.radio label {
	position: relative;
	display: inline-block;
	padding: 3px 9px 3px 20px;
	cursor: pointer;
}
.radio label:before,
.radio label:after {
	position: absolute;
	content: '';
	top: 50%;
	border-radius: 100%;
	-webkit-transition: all .2s;
	transition: all .2s;
}
.radio label:before {
	left: 0;
	width: 14px;
	height: 14px;
	margin-top: -8px;
	background: #f3f3f3;
	border: 1px solid #ccc;
}
.radio label:hover:before {
	background: #fff;
}
.radio label:after {
	opacity: 0;
	left: 3px;
	width: 8px;
	height: 8px;
	margin-top: -5px;
	background: #3498db;
	-webkit-transform: scale(2);
	transform: scale(2);
}
input[type="radio"]:checked + label:before{
	background: #fff;
	border: 1px solid #3498db;
}
input[type="radio"]:checked + label:after {
	opacity: 1;
	-webkit-transform: scale(1);
	transform: scale(1);
}
::placeholder{
	font-size: 10px;
}

/*page idou*/
.page_select{
}
.page_select select {
	width: 60px;
}

/*button*/
button.normal, input[type="button"].normal{
	border: 1px solid;
	padding: .2em .8em;
	border-radius: 10px;
}

button.grey-button, input[type="button"].grey-button{
	padding: .2em .8em;
	border-radius: 10px;
	background: #dcdcdc;
}
button.indigo-button{
	padding: 1.6em 1em;
	background: #305FB2;
	color: #fff;
	border-radius: 10px;
}
button.indigo-button:hover{
	background: #5487CF;
}
button.blue-button{
	padding: .6em 1em;
	background: #2b89b3;
	color: #fff;
	font-weight: bold;
	border-radius: 10px;
}
button.blue-button:hover{
	background: #619db8;
}

.kadomaru-button a{
	position: relative;
	border-radius: 50px;
	background: #505050;
	display: flex;
	justify-content: space-around;
	align-items: center;
	margin: 0 auto;
	max-width: 320px;
	text-align: center;
	padding: .4em 1em;
	color: #fff;
}
.kadomaru-button a:after {
	content: '';
	width: 8px;
	height: 8px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	transform: rotate(45deg) translateY(-50%);
	position: absolute;
	top: 50%;
	right: 20px;
	border-radius: 1px;
	transition: 0.3s ease-in-out;
}
.simple-button{
	margin: 3em 0 1em 0;
}
.simple-button a{
	display: inline-block;
	margin: .5em .5em 0 0;
	padding: 4px 10px; 
	cursor: pointer;
	font-size: 0.9em;
	border-radius: 3px;
	background: #fff;
	border: 1px solid #666;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	color: #696969;
}
.simple-button a:hover{
	background: #868484;
	border: 1px solid #848484;
	color: #fff;
}

.length-check-button{
	padding: 0 .4em;
	border: 1px solid #ddd;
	border-radius: 10px;
}
.works_button {
	max-width: 300px;
	margin: 0 auto;
}
a.wbtn {
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid;
	box-sizing: border-box;
	width: 100%;
	height: 50px;
	padding: 0 6% 0 12%;
	font-size: 16px;
	text-align: left;
	text-decoration: none;
	position: relative;
	transition-duration: 0.2s;
	color: #575757;
}
a.wbtn:hover {
	background: #575757;
	color: #fff;
}
a.wbtn:before {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7px 0 7px 8px;
	border-color: transparent transparent transparent #575757;
	position: absolute;
	top: 50%;
	left: 6%;
	margin-top: -7px;
}
a.wbtn:hover:before {
	border-color: transparent transparent transparent #fff;
}

.s_button{
	display: inline-block;
	box-shadow: 0 1px 0 1px rgba(0,0,0,.04);
	border: 1px solid #aaa;
	border-radius: .5em;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background: linear-gradient(to bottom, #ffffff 0%,#e5e5e5 100%);
	margin: 0 .4em;
}
.s_button a, .s_button form, button.s_button{
	display: inline-block;
	font-weight: 400;
	color: #444;
	line-height: 1.3;
	padding: .6em 1em; 
}
a.s_button_left{
	border-right: 1px solid #aaa;
}

.copy-button{
	display: inline-block;
	box-shadow: 0 1px 0 1px rgba(0,0,0,.04);
	border: 1px solid #aaa;
	border-radius: 25px;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background: linear-gradient(to bottom, #ffffff 0%,#e5e5e5 100%);
	margin: 0 .4em;
	padding: .2em .4em;
	font-size: .9em;
}
.copy-button a, .copy-button form{
	display: inline-block;
	font-weight: 400;
	color: #444;
	line-height: 1.3;
	padding: .6em 1em; 
}

.back_navi, .front_navi{
	margin: 4em auto 0;
	text-align: center;
}
.back_navi p, .front_navi p{
	display: inline-block;
	margin-bottom: 1em;
}
.back_navi p a, .front_navi p a{
	color: #fff;
	padding: .5em 1em;
	margin: 0 0 1em 1em;
	border-radius: 3px;
	display: inline-block;
	background: #545a58;
	max-width: 300px;
	line-height: 1.3em;
}
.back_navi p a::first-child{
	margin-left: 0;
}
.back_navi p a:hover, .front_navi p a:hover{
	opacity: .8;
}
.back_navi p a:first-child, .front_navi p a:first-child{
	margin-left: 0;
}
.back_navi p:last-child, .front_navi p:last-child{
	padding-bottom: 0;
}
.greyout_button,#link_ok_button p a{
	display: inline-block;
	padding: .5em 1em!important;
	border-radius: 10px;
}
.greyout_button{
	color: #CCC;
	margin-top: .5em;
	border: 1px solid #CCC;
}

#link_ok_button p{
	margin-top: .5em;
}
#link_ok_button p a{
	background: #568e7f;
	color: #fff;
}

.right-top-button{
	padding: 1em 0;
	text-align: right;
}
.right-top-button a{
	display: block;
	margin: 0 .3em;
	border-radius: 3px;
	padding: .3em .5em;
	border: 1px solid;
}

/*submit*/
.submit input[type="submit"], .submit input[type="reset"], .submit input[type="button"], .reset_button{
	display: inline-block;
	padding: .5em 1em; 
	cursor: pointer;
	font-size: 1em;
	border-radius: 3px;
}
.submit input[type="submit"]{
	background: #666;
	color: #FFF;
	/*text-indent: 0.8em;
	letter-spacing: 0.2em;*/
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.submit input[type="reset"], .submit input[type="button"], .reset_button{
	background: #fff;
	border: 1px solid #666;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.submit input[type="submit"]:hover{
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	opacity: .9;
}
.submit input[type="reset"]:hover, .submit input[type="button"]:hover, .reset_button:hover{
	background: #e0e0e0;
	border: 1px solid #e0e0e0;
}

.submit input[type="button"].sousin{
	background: #f7f7f7;
}

input[type="submit"].unclickable{
	color: #b5b5b5;
	border: 1px solid #CCC;
	pointer-events:none;
	background: #ebebeb;
}

select[readonly],
input[type="radio"][readonly],
input[type="checkbox"][readonly]{
	pointer-events:none;
}

/*目次*/
ul.index{
	width: 96%;
	border-radius: 5px;
	padding: .5em .5em 1em 1em;
	background: #f9f9f9;
}
ul.index li{
	display: block;
	padding: 6px 0;
}
ul.index li a{
	color: #5b4f49;
}
/*ul.index li span{
	display: inline-block;
	margin-bottom: 10px;
	font-size: 0.8em;
	border: 1px solid #ddd;
	border-radius: 6px;
	padding: 0 1%;
	position: relative;
	background: #fff;
}
ul.indexnav li span:after{
	border:5px solid transparent;
	border-top-color: #ddd;
	border-bottom-width:0;
	bottom:-5px;
	content:"";
	display:block;
	left: 3%;
	position: absolute;
	width: 0;
}
ul.index li span:before{
	border:5px solid transparent;
	border-top-color: #fff;
	border-bottom-width:0;
	bottom:-4px;
	content:"";
	display:block;
	left: 3%;
	position:absolute;
	width:0;
	z-index:1;
}*/
ul.index li a::before{
	border-right: 1px solid #604040;
	border-bottom: 1px solid #604040;
	border-radius: 4px;
	background: #f8f8f8;
	color: #604040;
	padding: 2px 5px;
	margin-right: .8em;
}
ul.index li a::before{
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	content: "\f0d7";
}
ul.index ul.inul li{
	padding: 0;	
}
ul.index ul.inul li a:before{
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	content: "\f0da";
	border: none;
	background: none;
}

/*見出し*/
.ryousen{
	position: relative;
	padding: 0 55px;
	font-weight: bold;
	margin-top: 1em;
	text-align: center;
	margin: 0 auto;
	max-width: 17em;
 }
.ryousen:before, .ryousen:after {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 45px;
	height: 1px;
	background-color: black;
}
.ryousen:before {
	left:0;
}
.ryousen:after {
	right: 0;
}
.pikon:before{
	display: inline-block;
	font-family: "Font Awesome 6 Free";
	content: "\f0eb";
	background: #ffca2c;
	color: #fff;
	font-weight: 900;
	font-size: 15px;
	border-radius: 50%;
	width: 25px;
	height: 25px;
	line-height: 25px;
	text-align: center;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

/*文字装飾*/
.noco{
	color: var(--write-cl);
}
.font600{
	font-weight: 600!important;
}
.fobo{
	font-weight: bold!important;
}
.fonl{
	font-weight: normal!important;
}
.textul{
	text-decoration: underline!important;
}
.textul02{
	border-bottom: 0.5px solid #c9c8c8;
	padding-bottom: 0.2em;
}
.tilt{
	font-style: oblique!important;
}
.del{
	text-decoration: line-through!important;
}
.foxsl{
	font-size: .7em!important;
}
.font09{
	font-size: .9em!important;
	line-height: 1.4em!important;
}
.fosl{
	font-size: .8em!important;
	line-height: 1.2em!important;
}
.fomid{
	font-size: .9em!important;
}
.folg{
	font-size: 1.2em!important;
}
.foxlg{
	font-size: 1.5em!important;
}
.white{
	color: #fff!important;
}
.red{
	color: #de2c2c!important;
}
.pink{
	color: #e56d8f!important;
}
.salmonpink{
	color: #fc6161!important;
}
.blue{
	color: #54A0BB!important;
}
.babyblue {
	color: #51a3b8;
}
.purple{
	color:#A312CC;
}
.grey{
	color: #8e8e8e!important;
}
.dgrey{
	color: #919191!important;	
}
.orange{
	color: #e56c08;
}
.mincho{
	font-family: serif!important;
}

/*区切り線*/
hr.hr_border_1{
	border-bottom: 1px solid #ddd;
}
hr.hr_border_3{
	height: 10px;
	background-image: repeating-linear-gradient(45deg,#f6f6f6 0, #f6f6f6 3px, transparent 0, transparent 50%);
	background-size: 10px 10px;
	background-color: #acacac;
}

.hissu{
	font-size: .9em;
	color: #F06;
}
/*white-space*/
.nowrap{
	white-space: nowrap;
}
/*overflow*/
.ofx-scroll{
	overflow-x: scroll;
}

/*line-height*/
.lh-01{
	line-height: 1em;
}
.lh-012{
	line-height: 1.2em;
}

/*text*/
.textc{
	text-align: center!important;
}
.textr{
	text-align: right!important;
}
.textl{
	text-align: left!important;
}

/*margin*/
.mgnt05{
	margin-top: .5em!important;
}
.mgnt1{
	margin-top: 1em!important;
}
.mgnt2{
	margin-top: 2em!important;
}
.mgnt3{
	margin-top: 3em!important;
}
.mgnt4{
	margin-top: 4em!important;
}
.mgnt5{
	margin-top: 5em!important;
}
.mgnb05{
	margin-bottom: .5em!important;
}
.mgnb1{
	margin-bottom: 1em!important;
}
.mgnb2{
	margin-bottom: 2em!important;
}
.mgnb3{
	margin-bottom: 3em!important;
}
.mgnb4{
	margin-bottom: 4em!important;
}
.mgnr1{
	margin-right: 1em!important;
}
.mgnl1{
	margin-left: 1em!important;
}
.mgnl2{
	margin-left: 2em!important;
}
.mgnl3{
	margin-left: 3em!important;
}
.margin0auto{
	margin: 0 auto;
}
.margin0{
	margin: 0!important;
}
.mlauto{
	margin-left: auto;
}

/*padding*/
.pdgt05{
	padding-top: .5em!important;
}
.pdgt08{
	padding-top: .8em!important;
}
.pdgt1{
	padding-top: 1em!important;
}
.pdgt2{
	padding-top: 2em!important;
}
.pdgt3{
	padding-top: 3em!important;
}
.pdgt4{
	padding-top: 4em!important;
}
.pdgb05{
	padding-bottom: .5em!important;
}
.pdgb08{
	padding-bottom: .8em!important;
}
.pdgb1{
	padding-bottom: 1em!important;
}
.pdgb2{
	padding-bottom: 2em!important;
}
.pdgb3{
	padding-bottom: 3em!important;
}
.pdgl05{
	padding-left: .5em!important;
}
.pdgl1{
	padding-left: 1em!important;
}
.pdgl2{
	padding-left: 2em!important;
}
.pdgr05{
	padding-right: .5em!important;
}
.pdgr1{
	padding-right: 1em!important;
}
.pdgr2{
	padding-right: 2em!important;
}

/*visibility*/
.vis-hidden{
	visibility: hidden;
}
/*display*/
.dis-none{
	display: none!important;
}
.dis-inline{
	display: inline!important;
}
.dis-inbl{
	display: inline-block!important;
}
.dis-bl{
	display: block!important;
}
/*vertical-align*/
.ver-mid{
	vertical-align: middle!important;
}
.ver-bl{
	vertical-align: baseline!important;
}


/*position*/
.pore{
	position: relative;
}
.posti{
	position: -webkit-sticky;
	position: sticky;
}
.postop0{
	top: 0;
}
.posbtm0{
	bottom: 0;
}

/*見出し(h1〜h4)*/
h1,h2,h3,h4,h5{font-weight: bold;}
h1{font-size: 1.8em;}
h2{font-size: 1.5em;}
h3{font-size: 1.3em;}
h4{font-size: 1.1em;}
h1 + p,h2 + p,h3 + p,h4 + p,
h1 + ul,h2 + ul,h3 + ul,h4 + ul{
	padding-top: .8em;
}
/*h2*/
h2.normal{
	font-size: 1.4em;
	padding-left: .5em;
	border-left: 10px solid #828282;
}
h2.ibl p, h2.ibl a{
	display: inline-block;
	border-bottom: solid 3px #e6e6e6;
}
h2.dob {
	border-bottom: solid 3px #e6e6e6;
	position: relative;
}
h2.dob:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px #c5c5c5;
	bottom: -3px;
	width: 24%;
}
h2.point {
	position: relative;
	padding: 1rem 2rem;
	text-align: center;
	color: #22ac38;
	border-radius: 0 10px 10px 10px;
	background: #e3f5d8;
}
h2.point:before {
	font-size: 15px;
	font-size: 1.5rem;
	position: absolute;
	top: -24px;
	left: 0;
	height: 24px;
	padding: 0 1em;
	content: '\POINT';
	color: #fff;
	border-radius: 10px 10px 0 0;
	background: #22ac38;
}
/*h3*/
h3.normal{
	font-size: 1.2em;
}
h3.normal:before{
	content: "■";
	padding-right: .5em;
	color: #b8b8b8;
}
/*h4*/
h4.h4_midashi01{
	margin-bottom: .8em;
	padding-left: .5em;
	border-bottom: 2px solid #ddd;
}

/*その他見出し*/
.taboo_midashi{
	background: #ffdcdc;
	color: #f63a3c;
	text-align: center;
	border-bottom: 1px solid #f5c8c8;
	padding: 1em 0.5em 1em 0.5em !important;
}
.l_midashi{
	font-size: 1.4em;
	padding-left: 0.2em;
	font-weight: bold;
	color: #6c6c6c;
}
.important{
	display: inline-block;
	background: #de1616;
	color: #fff;
	padding: .3em .4em .3em .6em;
	letter-spacing: .2em;
	border-radius: 2px;
	margin-bottom: .6em;
}

.pink-circle{
	background: #e55c5c;
	padding: .2em .6em;
	margin-right: .4em;
	color: #fff;
	font-size: .9em;
	display: inline-block;
	border-radius: 50%;
	width: 2em;
	text-align: center;
	white-space: nowrap;
}
.double-digit{
	padding: .2em .3em;
}

/*flex*/
.flex{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
}
.flex.grow1{
	flex-grow: 1;
}
.flex-jc-fe {/*右寄せ*/
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}
.flex-jc-ce {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.jc-sb{
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.flex-wrap {/*折り返し*/
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
}
.flex.al-bs{
	-webkit-box-align: baseline;
	-ms-flex-align: baseline;
	align-items: baseline;
}
.flex.al-ct{
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}
.flex.al-end{
	-webkit-box-align: end;
	-ms-flex-align: end;
	-webkit-align-items: end;
	align-items: end;
}
.flex.al-end{
	align-items: flex-end;
}
.flex.last-bs{
	align-items: last baseline;
}
.flex.reverse{
	flex-direction: column-reverse;
}

/*margin,padding*/
.ml-auto{
		margin-left: auto;
}

/*button*/
.btn{
	transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.btn-red{
	color: #fff;
	border-color: #e74c3c;
	background-color: #e74c3c;
	padding: 1em;
	border-radius: 10px;
}
.btn-red:hover{
		color: #fff;
		border-color: #cd2a19;
		background-color: #d62c1a;
}

/*開閉*/
.hide-toggle:hover{
	cursor: pointer;
}
.open_close_box {
}
.toggle-parent{
	cursor :pointer;
}
/*ボタン装飾*/
.open_close_box label {
	cursor :pointer;
	line-height: 1.2em;
}
/*ボタンホバー時*/
.open_close_box label:hover {
	cursor: pointer;
}
/*中身を非表示にしておく*/
.open_close_box .hide_box {
	height: 0;
	padding: 0;
	overflow: hidden;
	opacity: 0;
	transition: 0.8s;
}
/*クリックで中身表示*/
.open_close_box input:checked ~ .hide_box {
	padding: 10px 0;
	height: auto;
	opacity: 1;
}

/*クリックでポップアップ表示(単発)*/
.show_pop:hover{
	cursor: pointer;
}
.click_pop{
	position:relative;
	height: 0;
}
.js-modal-close{
	position: absolute;
	top: 0;
	font-size: 1.5em;
	border: 1px solid;
	height: 1.2em;
	line-height: 1.2em;
	color: #fff;
}
.js-modal-close:hover{
	cursor: pointer;
}
.bg{
	width: 100%;
	height: 100%;
	position:fixed;
	z-index:9998!important;
}
.modal_pop_main{
	background: #fff;
	padding: .5em;
	font-size: .8em;
	border: 1px solid #ddd;
	border-radius: 10px;
	margin-left: .4em;
}

/*R18*/
.icon_layers{
	display: inline-block;
	position: relative;
	vertical-align: middle;
	text-align: center;
	color: #f5abab;
	padding-right: .2em;
}
.icon_layers i{
	font-size: 1.2em;
}
.icon_layers_text{
	position: absolute;
	top: 0.2em;
	left: -2px;
	min-width: 100%;
	font-size: .7em;
	font-weight: bold;
	color: #ce1515;
}

/*Q&A*/
.qanda_box {
	margin: 1em 0 0;
	padding: 0;
}
ul.qanda{
	margin: 1em 0 1em 1em;
}
ul.qanda li{
	list-style-type: none;
	margin-bottom: 1.4em;
}
ul.qanda li::before{
	content:"Q：";
}
dl.qanda{	
}
dl.qanda dt{
	font-weight: bold;
	padding: 0.4em;
}
dl.qanda dt:not(:first-child){
	margin-top: 1.3em;
}
dl.qanda dt::before{
	content:"Q. ";
	color: #1b95c1;
}
dl.qanda dd{
	margin: 0 0 2em 0;
	padding: 2%;
	background: #f7f7f7;
}
dl.qanda dd::before{
	content:"A. ";
	color: #c22345;
	font-weight: bold;
}


dl.qa-2 dt {
    margin-bottom: 1em;
    font-weight: 600;
}

dl.qa-2 dt::before,
dl.qa-2 dd::before {
    margin-right: .4em;
}

dl.qa-2 dt::before {
    content: "Q.";
}

dl.qa-2 dd {
    margin: 0 0 2.5em;
    padding: 1em 1.5em;
    background-color: #fff7f0;
    color: #e07015;
}

dl.qa-2 dd::before {
    content: "A.";
}


dl.dllist01{
}
dl.dllist01 dt{
	border: 1px solid #ddd;
	border-radius: 5px 5px 0 0;
	border-bottom: 1px dashed #ddd;
	padding: .8em;
	font-weight: normal;
}
dl.dllist01 dt::first-line{
	font-weight: bold;
	font-size: 1.1em;
	padding-left: .4em;
	background: #f3e3df;
	border-radius: 5px;
}
dl.dllist01 dd{
	padding: .8em;
	border: 1px solid #ddd;
	border-top: none;
	border-radius: 0 0 5px 5px;
	margin-bottom: 2em;
}
dl.dllist01 dd::first-line{
	font-weight: bold;
	font-size: 1.1em;
	padding-left: .4em;
}

.cp_qa dt {
	margin: 0 0 2em 0;
	background: #f1f1f1;
	font-weight: normal;
	position: relative;
	padding: 1em 1em 1em 2em;
}
.cp_qa dt p{
	padding: .4em .4em .6em .4em!important;
}
.cp_qa dd::first-line{
	font-weight: bold;
}
.cp_qa dd {
	margin: 0 0 2em 0;
	padding: 0 0 1.5em 0;
	border-bottom: 1px dotted #0097a7;
}
.cp_qa dd p{
	padding-bottom: 1em;
}
.cp_qa dd::first-line{
	font-weight: bold;
}
.cp_qa dt::before, .cp_qa dd::before {
	font-size: 1.2em;
	margin: 0 0.5em 0 0;
	color: #ffffff;
	display: inline-block;
}
.cp_qa dt::before {
	padding: 0.1em 0.3em;
	content: 'Q';
	background: #f57c00;
	font-weight: bold;
	position: absolute;
	top:0;left:0;
}
.cp_qa dd::before {
	padding: 0.12em 0.45em;
	content: 'A';
	background: #0097a7;
	font-weight: bold;
}

/*kakomi系*/
.kakomi{
	border: 1px solid #ddd;
	background: #f7f7f7;
	border-radius: 3px;
	padding: .8em;
	margin: 1em 0;
}
.kakomi-bgnone{
	border: 1px solid #ddd;
	border-radius: 3px;
	padding: .8em;
	margin: 1em 0;
}
.kakomi-pdfew{
	border: 1px solid #ddd;
	border-radius: 3px;
	padding: .4em;
	background: #f7f7f7;
}
.kakomi-bgmgnone{
	border: 1px solid #ddd;
	border-radius: 3px;
	padding: .8em;
}

.midasi-box {
	position: relative;
	margin: 2em 0;
	padding: 0.5em 1em;
	border: solid 3px;
	border-radius: 8px;
}
.midasi-box .box-title {
	position: absolute;
	display: inline-block;
	top: -13px;
	left: 10px;
	padding: 0 9px;
	line-height: 1;
	font-size: 19px;
	background: #FFF;
	font-weight: bold;
}
.midasi-box div {
	padding: 1em .5em;
}

.check-midasi-box {
	margin: 2em 0;
	background: #f1f1f1;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.check-midasi-box .box-title {
	font-size: 1.2em;
	padding: 4px;
	text-align: center;
	color: #FFF;
	font-weight: bold;
	letter-spacing: 0.05em;
}
.check-midasi-box p {
	padding: 15px 20px;
	margin: 0;
	color: var(--write-cl);
}
.check-midasi-box .box-title.cmb-blue {
	background: #5fc2f5;
}
.check-midasi-box .box-title.cmb-orange {
	background: #f5a35f;
}
.check-midasi-box .box-title.cmb-pink {
	background: #f37d7d;
}

.flex .girly-box{
	flex: 1;
}
.girly-box {
	color: #565656;
	border-radius: 8px;
}
.girly-box h2{
	font-size: 1em;
}
.girly-box div{
	padding: 0.2em 1em;
}

.girly-box.gl-pink{
	background: #ffeaea;
	box-shadow: 0px 0px 0px 10px #ffeaea;
	border: dashed 2px #ffc3c3;
}
.girly-box.gl-blue{
	background: #cbe3e6;
	box-shadow: 0px 0px 0px 10px #cbe3e6;
	border: dashed 2px #8ecae8;
}
.girly-box.gl-blue h2, .girly-box.gl-babyblue h2{
	color: #51a3b8;
}
.girly-box.gl-babyblue{
	background: #eaffff;
	box-shadow: 0px 0px 0px 10px #eaffff;
	border: dashed 2px #8ecae8;
}
.girly-box.gl-orange{
	background: #ffd5b2;
	box-shadow: 0px 0px 0px 10px #ffd5b2;
	border: dashed 2px #f5a35f;
	color: #fff;
}
.girly-box.gl-orange h2{
	color: #e56c08;
}
.girly-box.simple-grey{
	background: #f7f7f7;
	box-shadow: 0px 0px 0px 10px #f7f7f7;
	border: dashed 2px #d9d9d9;
}
.girly-box.simple-grey a{
	color: #868686;
}

/*結論BOX*/
.conc-box01 {
	position: relative;
	margin-top: 1em;
	padding: 1.8em 1.5em 1em 1.5em;
	border: 2px solid #f27373;
}

.conc-box01 > div.boxtitle {
	position: absolute;
	top: -1.15em;
	left: -.5em;
	padding: .4em 1.4em;
	border-radius: 25px;
	background-color: #f27373;
	color: #fff;
	font-size: .9em;
}

.conc-box01 > div.boxtitle::before {
	position: absolute;
	bottom: -8px;
	left: 50%;
	transform: translateX(-50%);
	width: 16px;
	height: 8px;
	background-color: #f27373;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	content: '';
}

.conc-box01 p {
	margin: 0;
}

/*えんぴつマークのアイコンをつけた囲み枠 */
.notice-box01 {
	max-width: 400px;
	margin: 0 auto;
	border: 2px solid #ffb36b;
	border-radius: 5px;
}
.notice-box01 div.boxtitle {
	display: inline-flex;
	align-items: center;
	column-gap: 4px;
	position: relative;
	top: -13px;
	left: 10px;
	margin: 0 7px;
	padding: 0 8px;
	background: #fff;
	border-radius: 10px;
	color: #ffb36b;
	font-weight: 600;
	vertical-align: top;
}
.notice-box01 div.boxtitle::before {
	width: 22px;
	height: 22px;
	content: '';
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12.8995 6.85453L17.1421 11.0972L7.24264 20.9967H3V16.754L12.8995 6.85453ZM14.3137 5.44032L16.435 3.319C16.8256 2.92848 17.4587 2.92848 17.8492 3.319L20.6777 6.14743C21.0682 6.53795 21.0682 7.17112 20.6777 7.56164L18.5563 9.68296L14.3137 5.44032Z' fill='%23ffb36b'%3E%3C/path%3E%3C/svg%3E");
}
.notice-box01 div.boxcont{
	margin: 0;
	padding: 0 1.5em 1em;
}
/*ビックリマークのアイコンをつけた囲み枠 */
.caution-box01 {
	display: flex;
	grid-gap: 0 .7em;
	margin: 0 auto;
	padding: 1em;
	border-radius: 5px;
	background-color: #ffebee;
}
.caution-box01::before {
	width: 24px;
	height: 24px;
	content: '';
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12.8659 3.00017L22.3922 19.5002C22.6684 19.9785 22.5045 20.5901 22.0262 20.8662C21.8742 20.954 21.7017 21.0002 21.5262 21.0002H2.47363C1.92135 21.0002 1.47363 20.5525 1.47363 20.0002C1.47363 19.8246 1.51984 19.6522 1.60761 19.5002L11.1339 3.00017C11.41 2.52187 12.0216 2.358 12.4999 2.63414C12.6519 2.72191 12.7782 2.84815 12.8659 3.00017ZM10.9999 16.0002V18.0002H12.9999V16.0002H10.9999ZM10.9999 9.00017V14.0002H12.9999V9.00017H10.9999Z' fill='%23f06060'%3E%3C/path%3E%3C/svg%3E");
	background-repeat: no-repeat;
}
.caution-box01 p {
	margin: 0;
	padding: 0 0 0 .7em;
	border-left: 1px solid #f06060;
	color: #f06060;
}


.soft-caution-box {
	margin: 2em auto;
	padding:1em 1.6em;
	background-color: #EFE3DF; /* 背景色 */
	border-radius:1px;/*ボックス角の丸み*/
}
.soft-caution-box .sc-title {
	color: #e29176; /* タイトル文字色 */
	font-size: 17px;
	font-weight: bold;
	padding-bottom: .4em;
}
.soft-caution-box .sc-title:before {
	font-family: "Font Awesome 6 Free";
	content: "\f06a";
	font-size: 18px;
	margin: 0 3px 0 0;
	font-weight: bold;
}
.sft-ct-color{
	color:#cca497;
}

/*ワンポイント囲み*/
.kakomi-point {
	margin: 2em auto;
	padding:2em;/*内側余白*/
	position: relative;
	border: 8px solid #eee;/* 線の太さ・種類・色 */
	z-index: 0;
}
.kakomi-point:before {
	background-color:#cca497;/* ワインポイントの色 */
	content: '';
	display: block;
	position: absolute;
	top: -8px;
	left: -8px;
	width: 8px;
	height: 8px;
	z-index: 1;
}


ul.list-kakomi{
	border: 1px solid #ddd;
	background: #f9f9f9;
	border-radius: 3px;
	padding: .5em .8em .5em 2em;
	margin: .5em 0;
	color: var(--write-cl);
}
.kakomi-red{
	color: #bd2a2a;
	border: 1px solid #bd2a2a;
	background: #f4e5e5;
	border-radius: 3px;
	padding: .8em;
	margin: .5em 0;
}
.says {
	display: inline-block;
	margin: .5em;
	padding: 17px 13px;
	border-radius: 12px;
	background: #d7ebfe;
	font-size: .8em
}
.says p {
	margin: 0;
	padding: 0;
}

.fukidashi_down {
	position: relative;
	display: inline-block;
	margin-bottom: 1em;
	padding: 7px 10px;
	min-width: 88px;
	max-width: 100%;
	font-size: 16px;
	color: #f0f0f0;
	background: #41171b;
	border-radius: 2px;
}
.fukidashi_down:before {
	content: "";
	position: absolute;
	top: 88%;
	left: 24%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid #41171b;
}
.fukidashi_down.comkei{
	background: #bee8e4;
	color: #555;
}
.fukidashi_down.comkei:before {
	border-top: 15px solid #bee8e4;
}
.fukidashi_down.comtame{
	background: #e8bec2;
	color: #555;
}
.fukidashi_down.comtame:before {
	border-top: 15px solid #e8bec2;
}

.fukidashi_naname {
	position: relative;
	display: inline-block;
	margin: 1.5em 15px 1.5em 0;
	padding: 0 5px;
	width: 90px;
	height: 90px;
	line-height: 90px;
	text-align: center;
	color: #FFF;
	font-size: 20px;
	font-weight: bold;
	background: #a58eff;
	border-radius: 50%;
	box-sizing: border-box;
}
.fukidashi_naname:before {
	content: "";
	position: absolute;
	bottom: -8px;
	right: -8px;
	margin-top: -15px;
	border: 15px solid transparent;
	border-left: 15px solid #a58eff;
	z-index: 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.tips{
	margin: .8em 0 2em;
	font-size: .9em;
	padding: .5em;
}
.tips .tipstag{
	padding: 4px!important;
	font-weight: bold;
	display: inline-block;
	background: #f5f5f5;
	border-radius: 8px;
	border: .5px solid #e5e5e5;
}

 .guide_tag{
	padding: 4px!important;
	font-weight: bold;
	display: inline-block;
	background: #f5f5f5;
	border-radius: 8px;
	font-size: .8em;
	border: .5px solid #e5e5e5;
	margin-top: .8em;
}

.center_messe{
	text-align: center;
	max-width: 300px;
	margin: 0 auto;
}

/*BOX系*/
.taboobox01{
	margin: 0 auto;
	border: 3px solid #e22525;
	padding: 1em;
	border-radius: 10px;
	background: #E54D41;
	color: #fff;
}
.taboobox01 h2 + p{
	padding: .5em 0 1em .5em;
}

.taboobox02{
	background: #ffe7e7;
	color: #de2c2c;
	border: 1px solid #de2c2c;
	border-radius: 10px;
	padding: .5em;
	display: flex;
}
.taboobox02 div:first-child{
	padding-right: .8em;
}
.taboobox02 div{
}

.taboobox03 {
	padding: .5em .5em .5em 1em;
	background: #fff0f0;
}
.taboobox03 h2 {
	padding-top: .8em;
	color: #fd6b6d;
	font-size: 1.2em;
}
.taboobox03 h2 + p {
	padding: .5em 0 0 .5em;
}

.taboobox04 {
	background: #ffe7e7;
	color: #de2c2c;
	border: 1px solid #de2c2c;
	border-radius: 10px;
	padding: .8em;
	font-size: .9em;
}
.taboobox04 p{
	padding-bottom: .5em;
}

.red-box01 {
    padding: 0.5em 1em;
    margin: 2em 0;
    color: #ff7d6e;
    background: #ffebe9;
    border-top: solid 10px #ff7d6e;
}

/*label*/
.maru_label {
	position: relative;
	padding: 1.5rem;
	text-align: center;
	border: 2px solid #575757;
	font-weight: bold;
	font-size: 1.2em;
	width: 260px;
	margin: 2em auto;
}
.maru_label:before,
.maru_label:after {
	position: absolute;
	content: '';
}
.maru_label:before {
	top: -40px;
	left: calc(50% - 40px);
	width: 80px;
	height: 80px;
	border: 2px solid #575757;
	border-radius: 50%;
	background: #fff;
}
.maru_label:after {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fff;
}
.maru_label i {
	font-size: 30px;
	line-height: 60px;
	position: absolute;
	z-index: 1;
	top: -40px;
	left: calc(50% - 40px);
	width: 80px;
	height: 60px;
	text-align: center;
}
.maru_label span {
	display: block;
	position: relative;
	z-index: 1;
	padding: 1em;
	background: #575757;
	color: #fff;
}

.ti_label{
	text-align: center;
	color: #50412a;
	margin: 0 auto 1em;
	width: 20em;
}
.ti_label h3{
	background: #50412a;
	color: #fff;
	border-radius: 8px 8px 0 0;
	padding: 1em;
}
.ti_label_box{
	border: 0.5px solid;
	border-radius: 0 0 8px 8px;
	padding: 1em;
}
.ti_label p.tl_icon{
	font-size: 2em;
	padding-top: .2em;
}
.ti_label p.tl_text{
	padding-top: 2em;
	font-size: .9em;
}
.ti_label_box i.ups{
	color:#46290b8f;
}
.ti_label_box i.dwn{
}

/*hint*/
.hint {
	position: relative;
	padding: 5px 12px 5px 56px;
	box-sizing: border-box;
	color: #464646;
	background: #fff4db;
}
.hint:before{
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 10px;
	width: 36px;
	height: 36px;
	-ms-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	text-align: center;
	content: "\f0eb";
	font-family: 'Font Awesome 6 Free';
	color: #FFF;
	font-size: 20px;
	line-height: 36px;
	background: #ffd596;
	border-radius: 50%;
	font-weight: 900;
}
.hint p {
	position: relative;
	padding: 0;
	margin: 10px 0;
	z-index: 3;
	line-height: 1.7;
}

/*引用*/
blockquote {
	position: relative;
	padding: 10px 12px;
	box-sizing: border-box;
	font-style: italic;
	color: #464646;
	border-left: solid 40px #c4c4c4;
	background: #f3f3f3;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.19);
}

blockquote:before{
	display: inline-block;
	position: absolute;
	top: 50%;
	left: -32px;
	-ms-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	content: "\f10d";
	font-family: 'Font Awesome 6 Free';
	color: #FFF;
	font-size: 22px;
	line-height: 1;
	font-weight: 900;
}

blockquote p {
	position: relative;
	padding: 0;
	margin: 10px 0;
	z-index: 3;
	line-height: 1.7;
}

blockquote cite {
	display: block;
	text-align: right;
	color: #888888;
	font-size: 0.9em;
}

/*タブ切り替え*/
ul#tab-group{
	margin: .3em .1em;
	padding: 0;
}
a.term_tb{
	display: inline-block;
	margin: .1em;
	padding: 1em;
	font-size: 1em;
	text-decoration: none!important;
	color: #333!important;
	border-radius: 3px;
	white-space: nowrap;
	background: #f5f7f8;
	text-align: center;
	cursor: pointer;
	transition: all 0.2s ease 0s;
}

#panel-group{
	padding-left: 0;
}
#panel-group .panel{
	display:block;
	margin-top: 1em;
}
.is-active.term_tb{
	background:#c46691;
	color:#fff!important;
}

/*利用規約*/
.terms_text{
	padding: 1.5em .5em 1em;
}

.rough_taboo h2 {
	position: relative;/*相対位置*/
	padding: 0.5em 0.5em 0.5em 1.5em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	color: #ff6a6a;/*文字色*/
	border-top: dotted 1px gray;
	border-bottom: dotted 1px gray;
	background: #fffff4;
	font-size: 1.2em;
}
.rough_taboo h2:before {
	font-family: "Font Awesome 6 Free";
	content: "\f138";/*アイコンのユニコード*/
	font-weight: 900;
	position: absolute;/*絶対位置*/
	font-size: 1em;/*サイズ*/
	left: 0.25em;/*アイコンの位置*/
	top: 0.5em;/*アイコンの位置*/
	color: #ff6a6a; /*アイコン色*/
}

.okng_bar h2 {
	position: relative;/*相対位置*/
	padding: 0.5em 0.5em 0.5em 1.5em;/*アイコン分のスペース*/
	line-height: 1.4;/*行高*/
	color: #ff6a6a;/*文字色*/
	border-top: dotted 1px gray;
	border-bottom: dotted 1px gray;
	background: #fffff4;
}
.okng_bar h2:before {
	position: absolute;/*絶対位置*/
	font-size: 1em;/*サイズ*/
	left: 0.25em;/*アイコンの位置*/
	top: 0.5em;/*アイコンの位置*/
	color: #ff6a6a; /*アイコン色*/
}

ol.indexnav li.Clause h3{
	padding-top: 1em;
}
ol.indexnav{
	counter-reset:number; /*数字をリセット*/
	list-style-type: none!important; /*数字を一旦消す*/
	padding:0;
	margin-bottom: 6em;
}
ol.indexnav li.Clause{
	border-bottom: 1px dashed #e5dcd4;
}
ol.indexnav li.Clause a{
	color: #5b4f49;
}
ol.indexnav li.Clause h3::before{
	counter-increment: number;
	content: counter(number)". ";
	font-weight: bold;
}
ol.indexnav::first-child {
	margin-top: 3em;
}
/*form*/
form textarea{
	border: 1px solid #dcdcdc;
	border-radius: 3px;
}

.form-submit{
	text-align: center;
	padding: 1em 0;
}
.form-control{
	position: relative;
	font-size: 1em;
	line-height: 1.25;
	display: block;
	padding: .5rem .75rem .5rem .5rem;
	color: #7b8a8b;
	border: 1px solid rgba(0, 0, 0, .15);
	border-radius: .25rem;
	background-color: #fff;
	background-image: none;
	-webkit-background-clip: padding-box;
			background-clip: padding-box;
}
.form-control::-ms-expand{
	border: 0;
	background-color: transparent;
}
.form-control:focus{
	color: #7b8a8b;
	border-color: #66afe9;
	outline: none;
	background-color: #fff;
}
.form-control::-webkit-input-placeholder{
	opacity: 1;
	color: #999;
}
.form-control::-moz-placeholder{
	opacity: 1;
	color: #999;
}
.form-control:-ms-input-placeholder{
	opacity: 1;
	color: #999;
}
.form-control::placeholder{
	opacity: 1;
	color: #999;
}
.form-control:disabled,
.form-control[readonly]{
	opacity: 1;
	background-color: #b4bcc2;
}
.form-control:disabled{
	cursor: not-allowed;
}
.form-control input[type="text"]{
	border:none;
}

select.form-control:not([size]):not([multiple]){
	height: calc(2.5rem - 2px);
}
select.form-control:focus::-ms-value{
	color: #7b8a8b;
	background-color: #fff;
}
.form-control input[type="submit"]{
	position: absolute;
	top: .3em; right: .3em;
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-size: 1.3em;
	cursor: pointer;
	color: #847873;
	border: none;
 	background: transparent;
}

/*table*/
table.normal{
	display: block;
	overflow-x: scroll;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
	width: 100%;
	margin: 1.6em auto;
}
table.normal tr:not(:first-child){
	border-top: 1px solid #dcdcdc
}
table.normal th{
	padding: .4em 1em;
	text-align: center;
}
table.normal th.bgt{
	background: #f5f5f5;
}
table.normal th.bgy{
	background: #e7e7e7;
}
table.normal th.non{
background-image: linear-gradient(to right top, transparent calc(50% - 0.5px), #999 50%, #999 calc(50% + 0.5px), transparent calc(50% + .5px))
}
table.normal td{
	padding: .4em 1em;
	text-align: center;
}

.table_grid {
	width: 100%;
	margin: 0 auto;
}
.table_grid .grid_h{
	text-align: center;
	font-weight: bold;
	margin: 2em .4em 1em .4em;
	padding: .5em;
	font-size: 1.2em;
	background: #f9f9f9;
	border-radius: 50px;
	border-right: 1px solid #dcdcdc;
	border-bottom: 1px solid #dcdcdc;
}
.table_grid .tr{
	border-top: 1px solid #ddd;
}
.table_grid .th, .table_grid .nex-th{
	text-align: left;
	width: 100%;
	font-weight: bold;
	padding: 1em 0 0 .8em;
}
.table_grid .nex-th{
	width: 10em;
}
.table_grid .td,
.table_grid .nex-td{
	width: 100%;
	padding: 1em .8em 1em .8em;
}
.table_grid .nex-td{
	width: 80%;
}
.table_grid .pc_only_flex .th{
	text-align: left;
}
.table_grid .pc_only_flex .td div, .table_grid .pc_only_flex .td textarea{
	width: 98%;
	margin: 0 auto;
}

.table_grid input[type="text"], .table_grid textarea{
	width: 100%;
}
.table_grid select{
	width: auto;
	display: inline-block;
}

.formTableBox{
	margin-top: .5em;
}
table.formTable{
	margin: 0 auto;
	width: 98%;
	text-align: left;
}
table.formTable th, table.formTable td{
	padding: 1em .8em;
}
table.formTable th{
	background: #f0f0f0;
	width: 24%;
	font-size: .8em;
	vertical-align: middle;
}
table.formTable tr{
	border-bottom: .8px solid;
}
table.formTable tr:first-child{
	border-top: .8px solid;
}
table.formTable td{
	vertical-align: middle;
}
table.formTable input{
	width: 100%;
}

form.report_form{
}
form.report_form textarea{
	width: 100%;
	min-height: 5em;
}
form.report_form input[type="text"],form.report_form input[type="email"]{
}

table.send_form{
	width: 100%;
	font-size:0.9em;
	table-layout: fixed;
	word-break: break-all;
}
table.send_form th.top{
	vertical-align: top;
}
table.send_form td{

}
table.send_form, table.send_form td, table.send_form th{
	border: 1px solid #e2dfd9;
}
/*テーブル内の右側*/
.send_form td{
	padding: 10px;
}
/*テーブル内の左側の見出し部分*/
.send_form th{
	width: 20%;
	padding: 10px;
	text-align: center;
	background: #f6f6f6;
}
/*テーブル１行目に入った見出し部分*/
.send_form th.tamidashi{
	width: auto;
	text-align: left;
	background: #e2dfd9;
}
/*テーブルのキャプション設定*/
.send_form caption{
	padding: 10px;
	border-top: 1px solid #c9c9c9;
	border-right: 1px solid #c9c9c9;
	border-left: 1px solid #c9c9c9;
	text-align: left;
	font-weight: bold;
	background-color: #f7f4cc;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f6e3), to(#f7f4cc));	/*グラデーション*/
	background-image: -webkit-linear-gradient(#f7f6e3, #f7f4cc);
	background-image: linear-gradient(#f7f6e3, #f7f4cc);
}
table.nv-fnc{
}
table.nv-fnc tr{
}
table.nv-fnc tr td:first-child{
	text-align: right;
	white-space: nowrap;
}
table.nv-fnc td{
	padding-left: .8em;
	padding-bottom: .8em;
}


/*文字カウント*/
.cnt_area.cnt_danger{
	color: #FF0000;
}

/*マーカー*/
.marker_yellow {
	background: linear-gradient(transparent 60%, #ff6 60%);
}
.marker_pink {
	background: linear-gradient(transparent 80%, #f9d4e5 60%);
}

/*波線*/
.wavy-red{
	text-decoration-line: underline;
	text-decoration-style: wavy;
	text-decoration-color: #ec5555;
}

/*ローディング*/
#front-panel{
	position: absolute;
	width: 80px;
	height: auto;}

/*広告*/
.sp-foot-ad div{
	display: block!important;
}
.sp-foot-ad iframe{
	
}

/*小説関連*/
.typ_flg{
	display: inline-block;
	padding: .1em .5em;
	font-size: .7em!important;
	border-radius: 3px;
	white-space: nowrap;
}
.oriss{
	display: inline-block;
	border-radius: 3px;
	padding: .1em .5em;
	color: #fff;
	font-size: .7em;
}
.original{
	background: #A0CDED;
}
.original_color{
	color: #85CBD9;
}
.ss{
	background: #dc8ac1;
}
.ss_color{
	color: #dc8ac1;
}
.dream{
	color: #7c22b9;
	background: #dcd9e2;
}
.rensai{
	color: #5a9b7b;
	background: #EDFAE1;
}
.yomikiri{
	color: #F60;
	background: #F2EFD5;
}
.relay{
	color: #3b29b5;
	background: #C7DAEB;
}

/*font-awesome*/
.fa-bf::before, .far-bf::before,
.fa-af:after, .far-af:after,
input.font-awesome {
	font-family: 'Font Awesome 6 Free';
}
.fa-bf::before,
.far-bf::before {
	padding-right: .2em;
}
.fa-af:after,
.far-af:after {
	padding-left: .3em;
}
.fa-af::after,
.fa-bf::before,
input.font-awesome{
	font-weight: 900;
}
.far-af:after,
.far-bf::before {
	font-weight: 400;
}
input.font-awesome {
	text-decoration: inherit;
}
.fa-bf.red::before,
.fa-bf.fa-red::before,
.far-bf.fa-red::before,
.far-bf.red::before{
	color: #de2c2c;
}
.fa-bf.yellow::before,
.far-bf.yellow::before{
	color: #f8db28;
}
.fa-bf.violet::before,
.far-bf.violet::before{
	color: #A312CC;
}
.fa-bf.gold::before,
.far-bf.gold::before{
	color:#b88f13;
}
.fa-bf.skyblue::before,
.far-bf.skyblue::before{
	color:#46c5ce;
}
.fa-bf.icon-ss::before,
.far-bf.icon-ss::before {
	font-size: .8em;
}
.angle-double-up::before{
	content: "\f102";
}
.arrow-right-left::before{
	content: "\f0ec";
}
.angle-down-bf::before{
	content: "\f107";
}
.angle-down-af::after{
	content: "\f107";
}
.award::before{
	content: "\f559";
}
.balloon::before{
	content: "\f075";
}
.balloon-af::after{
	content: "\f075";
}
.balloon-dot::before{
	content: "\f4ad";
}
.balloon-dot-af::after{
	content: "\f4ad";
}
.ban::before{
	content: "\f05e";
}
.batu::before{
	content: "\f00d";
}
.boad-list::before{
	content: "\f46d";
}
.book::before{
	content: "\f02d";
}
.book-open::before{
	content: "\f518";
}
.cookie::before{
	content: "\f563";
}
.fa-bf.caret-down::before{
	content: "\f0d7";
}
.fa-af.caret-right::after{
	content: "\f0da";
}
.fa-bf.caret-right::before{
	content: "\f0da";
}
.fa-bf.comments::before{
	content: "\f086";
}
.checkmark::before{
	content: "\f00c";
}
.check-circle::before{
	content: "\f058";
}
.chevron-right::after{
	content: "\f054";
}
.chevron-left::before{
	content: "\f053";
}
.circle-chevron-right::before{
	content: "\f138";
}
.clock::before{
	content: "\f017";
}
.code::before{
	content: "\f121";
}
.crown::before{
	content: "\f521";
}
.database::before{
	content: "\f1c0";
}
.edit::before{
	content: "\f044";
}
.ellipsis-vertical::before,
.fa-af.ellipsis-vertical::after{
	content: "\f142";
}
.eraser::before{
	content: "\f12d";
}
.exclamation-circle::before{
	content: "\f06a";
}
.exchange::before{
	content: "\f362";
}
.external::after{
	content: "\f35d";
}
.external-bf::before{
	content: "\f35d";
}
.eye::before{
	content: "\f06e";
}
.eye-slash::before{
	content: "\f070";
}
.fa-af.arrow-right-long::after{
	content: "\f178";
}
.file-lines::before{
	content: "\f15c";
}
.filter::before{
	content: "\f0b0";
}
.flag::before{
	content: "\f024";
}
.gear::before{
	content: "\f013";
}
.hand::before{
	content: "\f256";
}
.fa-bf.clipboard::before{
	content: "\f328";
}
.fa-bf.home::before{
	content: "\f015";
}
.fa-bf.info::before{
	content: "\f05a";
}
.laugh::before{
	content: "\f599";
}
.light::before{
	content: "\f0eb";
}
.fa-bf.list::before{
	content: "\f03a";
}
.login::before{
	content: "\e4b2";
}
.logout::before{
	content: "\f08b";
}
.magic::before{
	content: "\e2ca";
}
.mail::before{
	content: "\f0e0";
}
.mail-bulk::before{
	content: "\f674";
}
.megaphone::before{
	content: "\f0a1";
}
.pen::before{
	content: "\f304";
}
.permmark::before{
	content: "\f7ef";
}
.question-circle::before{
	content: "\f059";
}
.redo::before{
	content: "\f2f9";
}
.reply::before{
	content: "\f3e5";
}
.replyd::before{
	content: "\f3e6";
}
.reload::before{
	content: "\f2f1";
}
.search::before{
	content: "\f002";
}
.search-plus::before{
	content: "\f00e";
}
.smile::before{
	content: "\f118";
}
.star::before{
	content: "\f005";
}
.tag::before{
	content: "\f02b";
}
.tags::before{
	content: "\f02c";
}
.times::before{
	content: "\f00d";
}
.times-circle::before{
	content: "\f057";
}
.trophy::before{
	content: "\f091";
}
.user::before{
	content: "\f007";
}
.userplus::before{
	content: "\f234";
}
.usercog::before{
	content: "\f4fe";
}
.users::before{
	content: "\f0c0";
}
.user-gear::before{
	content: "\f4fe";
}
.user_login::before{
	content: "\f090";
}
.userdel::before{
	content: "\f503";
}
.vote::before{
	content: "\f004";
}

/* タブレット端末
================================================= */
@media screen and (min-width:737px){
	html{
		font-size: 16px;
	}
	h1{font-size: 1.6em;}
	h3{font-size: 1.4em;}
	h4{font-size: 1.2em;}

	.tab_only, .tab_pc_only{
		display: block;
	}
	.sp_only, .pc_only{
		display: none;
	}

	.tab_pc_flex{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
	}
	.tab_pc_flex.flex_center{
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.tab_pc_flex main{
		flex: 2.4;
		min-width: 0;
		padding: 0 0 3em 0;
		margin-right: 2em;
	}
	.tab_pc_flex #side{
		flex: 1;
	}
	/*side*/
	#side{
		margin-left: auto;
	}
	.tab_pc_flex #side{
		background: none;
	}
	.tab_pc_flex #side ul{
		padding: 0;
		width: 16em;
		margin: 0 auto;
	}
	.adimage_yoko{
		max-width: 64em;
		height: auto;
		margin: 0 auto;
	}
	.adimage_tate{
		width: 160px;
		height: auto;
		margin: 0 auto;
	}
	
	img.adm{
		width: 90%; height: auto;
	}
	img.adm_s{
		width: 60%; height: auto;
	}

	body#MAIN #headlogo{
		padding: 0;
	}

	#wrapper{
		max-width: 100%;	
	}
	#contents{
		max-width: 990px;
		margin: 0 auto;
		padding: 0 .8em;
	}
	.articleBox{
		padding: 0 0 6em 0;	
	}

	.head_search{
		width: 240px;
	}
	/*head_search
	.head_search{
		margin-right: -200px;
	} 右スライド用*/

	/*head*/
	.logo{
		font-size: 3em;
	}
	header #head{
	}
	#headlogo{
	}
	
	#pageTitle h1{
	font-size: 1.4em;
	}
	#pageTitle div{
	max-width: 64em;
	margin: 0 auto;
	}

	/*index*/
	.index_text{
	width: 80%;
	}

	/*form*/
	.form-control {
		font-size: 1rem;
		width: 100%;
	}
	/*table*/
	.table_grid .th, .table_grid .nex-th{
		width: 24%;
		text-align: center;
	}
	.head_sub_menu div a{
		font-size: .9em;
		padding: .3em .6em;
	}
	/*header*/
	.login_button a{
		padding: .4em 1em;
	}

	/*nav*/
	nav .menu-item a{
		padding: 1em 1.3em;
	}

	/*main内*/
	.ti_label.yume{
		margin-right: .4em;
	}
	.ti_label.relay{
		margin-left: .4em;
	}

	/*HELP*/
	#Help_Chart .textBox h2{
		border-radius: 0 10px 10px 0;
		padding-left: 1em;
	}
	#Help_Chart .textBox h2:before{
		margin-left: 0;
	}

	/*タブ*/
	.tab_box .tab_btn {
		font-size: 1em;
	}
	/*kakomi系*/
	.kakomi{
		margin: 1em;
		padding: 1.6em;
		max-width: 90%;
	}

	/*その他見出し*/
	.l_midashi{
		font-size: 1.6em;
	}

}

/*パソコン
================================================= */
@media screen and (min-width:1025px){
	.sp_only, .sp_tab_only, .tab_only{
		display: none;
	}
	.tab_pc_only, .pc_only{
		display: block;
	}

	.pc_only_flex{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		width: 64em;
		margin: 0 auto;
	}
	.pc_only_flex.flex_center{
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.pc_only_flex main{
		width: 56em;
		padding: 0 .8em 3em;
	}

	.novel_pc_only_flex{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		max-width: 72em;
		margin: 0 auto;
	}
	body#MAIN header #head{
	}
	body#MAIN #headlogo .kana{
		line-height: 2em;
	}
	body#MAIN #headlogo #MainLogo{
		font-size: 1.6em;
	}
	#pageTitle div{
		max-width: 64em;
	}
	#pageTitle h1 {
		font-size: 1.5em;
	}

	#contents{
		max-width: 64em;
	}
	
	/*ページ内検索*/
	#pg-search input[type="text"] {
		width: 300px;
		margin-right: 10px;
	}
	#pg-search button {
		margin-right: 5px;
	}

	/*nav*/
	nav .menu-item a{
		padding: 1em 2em;
	}
	nav .menu-item a i{
		font-size: 2em;
	}

	/*table*/
	.table_grid .th, .table_grid .nex-th{
		padding: 1em .8em .8em .8em;
	}
	.table_grid .td{
		padding: 1em .8em .8em .8em;
	}
	table.formTable{
		width: 100%;
	}
	table.formTable input{
		width: 80%;
	}
	
	/*main*/
	.ti_label{
		width: 100%;
	}
	.ti_label.yume{
		margin-right: .8em;
	}
	.ti_label.relay{
		margin-left: .8em;
	}


	/*目次*/
	.index_text{
		max-width: 360px;
	}

	/*小説表示*/
	#novel_contents, #comment_contents{
		box-shadow: 0 1px 3px 0 rgba(0,0,0,.3), 0 4px 8px 3px rgba(0,0,0,.15);
	}
	#novel_contents{
		max-width: 56em;
	}
	#comment_contents{
		max-width: 56em;
		padding: 1.6em 1em 3em;
	}
	.caution{
		width: 70%;
	}
	
	/*side*/
	#side{
		width: 16em;
	}
	.pc_only_flex #side{
		margin-left: auto;
		padding: 2em 1em;
	}
	.novel_pc_only_flex #side{
		margin-left: auto;
		padding: 2em 1em;
	}
}

/*ダークモードー================================================= */
@media (prefers-color-scheme: dark) {
	:root {
		--wrap-bg: #15202B;
		--header-bg: #192734;
		--nav-bg: #454d5e;
		--side-bg: #6c6c6c;
		--wt-cl: #fff;
		--view-cl: #c9c9c9;
		--h1-cl: #f3f3f3;
		--write-cl: #626262;
		--grey-cl: #cfcfcf;
	}
	html{
		color: var(--wt-cl);
	}
	main{
		animation: pagemove 1s forwards;
	}
	main a{
		color: #539ab9;
	}
	input[type="text"], input[type="email"], input[type="password"], textarea {
		/*background: #ebebeb;*/
		color: #403f3f;
	}
	.submit input[type="reset"], .submit input[type="button"], .reset_button{
		color: var(--write-cl);
	}
	button, [type="button"]{
		color: var(--write-cl);	
	}
	.submit input[type="submit"] {
		background: #5399b8;
	}
	.noco, .pinpc{
		color: var(--view-cl);	
	}
	
	.purple {
		color: #803595;
	}
	.grey{
		color: var(--view-cl)!important;
	}
	.red{
		color: #c55353!important;
	}
		
	header #head {
		color: #fff;
	}
	#pageTitle h1 {
		color: var(--wt-cl);
		text-shadow: none;
	}
	#pageTitle h1:after {
		height: 0;
		background:none;
	}
	.l_midashi{
		color: #d6d6d6;
	}
	.index_text h2{
		color: var(--write-cl);	
	}
	#How_Chart .textBox h2{
		color: var(--write-cl);
	}
	
	#wrapper {
		background: var(--wrap-bg);
	}
	body#MAIN nav#headnav{
		border-bottom: none;
	}
	nav#headnav {
		background: var(--nav-bg);
		color: var(--wt-cl);		
	}
	.svg-dark-color{
		filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(358deg) brightness(101%) contrast(100%);
	}
	.tab_pc_flex #side, #side {
		background: var(--wrap-bg);
	}
	footer{
		background: var(--header-bg);
	}

	body#subpage header{
		background: var(--header-bg);
	}
	header .catch{
		color: var(--view-cl);	
	}
	body#MAIN #MainLogo h1#logo{
		background: url(https://novelcake.net/images/logo-dark.png) no-repeat;
		background-size: contain;
		width: 8.2em;
		height: 2em;
	}
	body#subpage #MainLogo h1#logo{
		background: url(https://novelcake.net/images/logo-dark.png) no-repeat;
	}
	ol.indexnav li.Clause a {
		color: #999593;
		text-decoration: underline;
	}
	a.wbtn {
		color: var(--view-cl);
	}
	.bg-wrap{
		background: var(--wrap-bg);
	}

	/*box*/
	.midasi-box .box-title {
		background: var(--wrap-bg);	
	}
	.soft-caution-box {
		color: var(--write-cl);
	}
	.rough_taboo h2 {
		background: transparent;
	}
	.taboobox03{
		background: #3f3c3c;
	}
	.ti_label{
		color: var(--wt-cl);
	}
	.ti_label_box{
		border-color: #525252;
	}
	.ti_label h3{
		background: #525252;
	}
	.ti_label_box i.ups {
		color: #4747478f;
	}
	.kakomi{
		color: #393939;
		background: #dedede;
	}
	.kakomi-pdfew {
		color: #666;
	}
	.girly-box.simple-grey{
		background: #c7c7c7;
		box-shadow: 0px 0px 0px 10px #c7c7c7;
	}
	.girly-box.simple-grey a{
		color: #434343;
	}
	.cp_qa dt {
		background: #444;
	}
	.notice-box01 div.boxtitle {
		background: #807973;
	}
	
	table.formTable th {
		background: #777;
	}
	dl.dllist01 dt::first-line{
		background: #cfafa7;
	}
	dl.qanda dd {
		background: #262626;
	}
	.tips .tipstag{
		color: var(--write-cl);
	}
	.tips .tipstag{
		color: var(--write-cl);
	}
	table.normal th.bgt, table.normal th.bgy {
		color: var(--write-cl);
	}
	.table_grid .grid_h{
		color: var(--write-cl);	
	}
	
	#Help_Chart .textBox h2{
		color: var(--write-cl);
	}
}