@charset "utf-8";


body{
	font-family:'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	line-height: 1.6;
}
a{
	text-decoration: none;
}
.showImg{
	color: #095b7e;
	cursor: pointer;
}
.showImg:hover{
	text-decoration: underline;
}
.br_h50{
	height: 50px;
}
.imgWrapper {
	text-align: center;
	margin: 24px auto 40px;
}
.imgWrapper .portrait{
	width: 60%;
	box-shadow:0px 2px 6px -1px #c2c2c2;
		-moz-box-shadow:0px 2px 6px -1px #c2c2c2;
		-webkit-box-shadow:0px 2px 6px -1px #c2c2c2;
		-o-box-shadow:0px 2px 6px -1px #c2c2c2;		-ms-box-shadow:0px 2px 6px -1px #c2c2c2;
}
.imgWrapper .portrait60{
	width: 60%;
}


.caution {
	color: #e63a50;
}
.caution_s {
	color: e63a50;
	font-size: .9em;;
}
p.caution,
p.caution_s {
	margin-left: 1em;
	text-indent: -1em;
}
p.caution::before,
p.caution_s::before {
	content: "※";
}
.bold{
	font-weight: bold;
}
.em{
	font-weight: bold;
	color: #d11f8d;
}
.caution.strong {
	background-color: #fae2f1;
	padding: 5px 5px 5px 2em;
}
/* **********************************
/* パンくず
/* ********************************** */
.pan{
	display: flex;
	/*font-size: .9em;*/
	padding: 5px 1em;
	background-color: #eee;

	transition: all 1s ease;
}
	.pan > li{
		/*margin-right: 1em;*/
	}
	.pan > li::after{
		content: ">";
		margin: 0 1em;
	}
	.pan > li:last-child::after{
		content: "";
	}

/* **********************************
/* main
/* ********************************** */
.list_container{
	position: relative;
	padding-bottom: 50px;
}

/* **********************************
/*
/* ********************************** */
.detailH1{
	/*font-size: 2em;
	color: #666;
	margin-bottom: 10px;
	line-height: 1em;*/
}
	.detailH1.caution{
		color: red;
	}
.detailList{
	margin: 32px 0;
	/*font-size: .9em;*/
}
	.detailList li a{
		color: #333;
		display: inline-block;
		margin: 8px 0;
		/* height: 2em; */
		width: 100%;
		padding: 1.5em 2.5em 1.5em 1em;
		background-color: #eee;
		border-radius: 10px;
		text-overflow: ellipsis;
		/* white-space: nowrap; */
		/* overflow: hidden; */
		position: relative;
		transition: all .5s ease;
	}
		.detailList li a::after{
			content: "";
			display: block;
			position: absolute;
			border-top: 2px solid rgba(0,0,0,.3);
			border-right: 2px solid rgba(0,0,0,.3);
			transform: rotate(45deg);
			-webkit-transform: rotate(45deg);
			width: 20px;
			height: 20px;
			right: 16px;
			top: 0;
			bottom: 0;
			margin: auto;
		}
	.detailList li a:hover{
		background-color: #ffe417;
	}

.detailBody {
	margin-left: 16px;
	position: relative;
	padding-bottom: 20px;
	/*border-top: 2px dashed #666;*/
	/*border-bottom: 2px dashed #666;*/
	/*margin-bottom: 50px;*/
}
	.detailBody h1{
		font-size: 1.8em;
		color: #444;
		line-height: 1.6em;
		margin-left: -16px;
		margin-bottom: 96px;
	}
	.detailBody .detailH2 {
		font-size: 1.4em;
		font-weight: bold;
		line-height: 1.4em;
		margin: 80px 0 32px -16px;
		background-color: #efefef;
		/*border-bottom: 1px solid #333;*/
		padding: 16px;
	}
	.detailBody .detailH3 {
		font-size: 1.2em;
		font-weight: bold;
		line-height: 1.4em;
		margin: 32px 0 0 -16px;
		padding: 16px;
	}
	.detailBody p{
		line-height: 1.6em;
		margin-top: 1em;
		margin-bottom: 1em;
	}
	.detailBody ul{
		list-style-type: disc;
		margin: .5em 0 .5em 1em;
	}

	.detailBody a{
		text-decoration: none;
		font-weight: bold;
	}
	.detailBody a:hover {
		text-decoration: underline;
	}
	
h4 {
	font-size: 1.2em;
	margin: 32px 0 16px;
	border-left: 4px solid #999;
	padding-left: 1em;
	font-weight: bold;
}

ul.circle{
	margin: 32px 0 1em 1em;
}
.circle > li{
	list-style-type: disc;
	margin-bottom: .8em;
}

.linkToCategory{
	display: block;
	width: 10em;
	height: -1em;
	border: 1px solid #666;
	color: #333;
	padding: .2em 0;
	text-align: center;
	margin: 0 auto;
	right: 0;
	position: absolute;
}

/* **********************************
/*
/* ********************************** */
.categoryList_button{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;;
}
.categoryList_button li{
	/*color: #658dd0;*/
	font-size: 110%;
	padding: 1em 2em 1em 1em;
	/* margin: 5px 0; */
	position: relative;
	height: 100%;
}
	.categoryList_button li::after{
		content: "";
		display: block;
		position: absolute;
		border-top: 2px solid #00336d;
		border-right: 2px solid #00336d;
		transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		width: 20px;
		height: 20px;
		right: 15px;
		top: 0;
		bottom: 0;
		margin: auto;
	}
.categoryList_button a{
	border: 2px solid #00336d;
	color: #00336d;
	width: 48%;
	/* display: block; */
	margin: 5px 0;
	transition: all .5s ease;
}
.categoryList_button a:hover{
	background-color: #d7e6ef;
}

.categoryList_button a.itself{
	background-color: #00336d;
	color: #fff;
}
	/*.categoryList_button li.itself::after{
		border-top-color: white;
		border-right-color: white;
	}*/






/* **********************************
/* helpDetail
/* ********************************** */
.helpDetail{
}
	.helpDetail h5{
		font-weight: bold;
		font-size: 1.2em;
		margin: 1em 0 .5em;
	}

.backToCategoryButton{
	padding: .5em 1em;
	/* background-color: #999; */
	color: #333;
	font-size: 1em;
	margin: 2em 0 .5em 1em;
	display: block;
	position: relative;
	width: 10em;
	cursor: pointer;
}
.backToCategoryButton::before{
	content: "";
	position: absolute;
	border-top: 1px solid #333;
	border-left: 1px solid #333;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	width: 1em;
	height: 1em;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}

#main .backToCategoryButton{
	margin-left: calc(1em - 20px);
}
.box{
	border-radius: 10px;
	border: 1px double #999;
	padding: 10px;
}
.helpDetail .promiseH5{
	margin: 1em 0 .5em 0;
	text-decoration: underline;
}
.helpDetail .pContent{
	margin-bottom: 5px;
	line-height: 1em;
	font-size: 1em;
}
.pContent.in2{
	margin-left: 2em;
	text-indent: -2em;
}
.pContent.ml2in2{
	margin-left: 4em;
	text-indent: -2em;
}
.pContent.ml2{
	margin-left: 2em;
}


/* **********************************
/* footer
/* ********************************** */
footer{
	/*margin-top: 30px;*/
	background-color: #171717;
	color: white;
	padding: 1em;
}
.footer_categoryList{
	display: none;
	list-style-type: disc;
	margin-left: 1em;
}
.footer_categoryList a{
}




/* **********************************
/* inquiry
/* ********************************** */
.main_inquiry a{
	display: block;
	margin: 16px 0;
	font-weight: bold;
}
.main_inquiry a:hover{
	text-decoration: underline;
}



.inquiryBody {
position: relative;
}
.inquiryWrap {
    margin: 32px 0 0;
}
.inquiryEachWrap {
    /*border: 1px solid #2f1111;*/
    padding: 10px 0;
    margin-bottom: 32px;
}
.inquiryEachWrap > h5 {
    background-color: #e2e6e6;
    padding: 8px 4px;
    font-weight: bold;
    margin-bottom: 16px;
}
.inquiryEachWrap > input[type='text'],
.inquiryEachWrap > input[type='tel'],
.inquiryEachWrap > input[type='email'],
.inquiryEachWrap > select {
    padding: .5em 1em;
    /* border: none; */
    border-radius: 5px;
    font-size: 1em;
}
.inquiryBtn {
	border: 1px solid #658dd0;
	text-align: center;
	margin: 20px auto;
	width: 15em;
	padding: 10px;
	background-color: #658dd0;
	color: white;
	cursor: pointer;
	transition: all .5s ease;
}
.inquiryBtn:hover {
	border: 1px solid #00336d;
	background-color: #00336d;
}
.inquiryAlert{
	color: red;
}

.inquiryBtnArea-note {
	background-color: #fff;
	padding: 1em;
	margin-top: 8px;
}
.inquiryBtnArea-note--title {
	font-weight: bold;
	text-align: center;
	border-bottom: 1px solid #999;
	padding: 8px 0;
	margin: 0 0 16px 0;
}
.inquiryBtnArea-note--ul {
	margin-left: 1em;
	font-size: 90%;
}
.inquiryBtnArea-note--ul li {
	margin-left: 1em;
	text-indent: -1em;
	line-height: 180%;
}

.inquiryMailTemplate {
	border: 1px solid #bbb;
	padding: 1em;
	margin-top: 8px;
}
.inquiryMailTemplate--ul {
	margin-left: 1em;
}
.inquiryMailTemplate--ul li {
	margin-left: 1em;
	text-indent: -1em;
}



/* **********************************
/* other
/* ********************************** */
.tutorialFrameWrap{
	position: relative;
}
.tutorialFrame{
	width: 100%;
	height: 100%;
	border: none;
	overflow: hidden;
}
.tutorialFrameBack{
	position: absolute;
	height: 30px;
	display: block;
	background-color: white;
	width: 100%;
	box-shadow: 0 0 5px rgba(0,0,0,.5);
	line-height: 30px;
	padding: 0 10px;
	color: #333;
}
dl {
    margin: 1.5em .2em;
}
	dt{
			font-weight: bold;
	}
	dt:first-child{
		margin-top: 0;
	}
.numbering{
	margin-top: 1em;
}
.numbering::before{
	counter-increment: numbering;
	content: counter(numbering);
	border: 2px solid #f38d16;
	color: white;
	background-color: #f38d16;
	border-radius: 100%;
	    width: 1.5em;
	    text-align: center;
	    height: 1.5em;
	    /* padding: 10px; */
			display: inline-block;
	    line-height: 1.5em;
	    margin-right: .5em;
	    margin-bottom: .3em;
}
dl{
	counter-reset: numbering;
}
.ref{
	position: relative;
	padding-left: 1em;
	margin-left: 1em;
	text-indent: 0;
	display: inline-block;
}
	.ref::before{
		content: "";
		display: inline-block;
		border: 7px solid transparent;
		border-left: 10px solid #000;
		width: 0;
		height: 0;
		position: absolute;
		left: 0px;
		top: calc(50% - 5px);
	}

/* **********************************
/* load anime
/* ********************************** */
.sk-cube-wrap{
	width: 100%;
	height: 100%;
	position: fixed;
	background-color: rgba(255,255,255,.9);
	top: 0;
}
.sk-cube-grid {
	width: 40px;
	height: 40px;
	margin: auto;
	/* display: none; */
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
.sk-cube-grid .sk-cube {
	width: 33%;
	height: 33%;
	border: 1px solid #D73E7E;
	background-color: #D73E7E;
	-webkit-box-sizing: border-box;
			-moz-box-sizing: border-box;
				-o-box-sizing: border-box;
					box-sizing: border-box;
	float: left;
	-webkit-animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
					animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
}
.sk-cube-grid .sk-cube1 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }
.sk-cube-grid .sk-cube2 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s; }
.sk-cube-grid .sk-cube3 {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s; }
.sk-cube-grid .sk-cube4 {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s; }
.sk-cube-grid .sk-cube5 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }
.sk-cube-grid .sk-cube6 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s; }
.sk-cube-grid .sk-cube7 {
  -webkit-animation-delay: 0s;
          animation-delay: 0s; }
.sk-cube-grid .sk-cube8 {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s; }
.sk-cube-grid .sk-cube9 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }

@-webkit-keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    -webkit-transform: scale3D(1, 1, 1);
            transform: scale3D(1, 1, 1);
  } 35% {
    -webkit-transform: scale3D(0, 0, 1);
            transform: scale3D(0, 0, 1);
  }
}

@keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    -webkit-transform: scale3D(1, 1, 1);
            transform: scale3D(1, 1, 1);
  } 35% {
    -webkit-transform: scale3D(0, 0, 1);
            transform: scale3D(0, 0, 1);
  }
}



/*@media only screen and (min-device-width: 310px) and (max-device-width: 710px){*/
@media only screen and (max-width: 667px){
	.imgWrapper .portrait{
		width: 80%;
	}
	.imgWrapper .portrait60{
		width: 90%;
	}

	.detailBody h1 {
		font-size: 140%;
		margin-bottom: 64px;
	}
	.detailBody .detailH2 {
		font-size: 110%;
		margin-top: 56px;
	}
	.detailBody .detailH3 {
		font-size: 100%;
	}

}
