
/*---------------------------------------------------*/
/*全体*/
/*---------------------------------------------------*/

* {
	margin: 0;
	padding: 0;
}
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

html,body {
	height: 100%;
}
body {
	font-size: 14px;
	font-family: 'Lato', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	background: #fefefe;
	-webkit-text-size-adjust: 100%;
}


/*---------------------------------------------------*/
/*本文箇所*/
/*---------------------------------------------------*/

#main {
	background: #fefefe;
}
#main-content {
	padding-left: 260px;
	max-width: 1500px; /* 最大幅 */
}
#main p {
	margin-bottom: 1em;
	line-height: 1.9;
}
#main .inner {
	padding: 110px 50px 110px 50px;
	color: #555555;
}

#main .inner > .content-C img{
	max-width: 1200px; /* 最大幅 */
	width: calc(80%);
	display: block;
	margin:auto;
	margin-bottom:20px;
}

#main .inner img.img-qr{
	width: calc(40%);
	display: block;
	margin:auto;
	margin-bottom:20px;
}

#main .inner > .content-C button{
	display: block;
	margin:auto;
	margin-bottom:20px;
}

#main .inner img{
	border: 1px #555555 solid; 
}

#main .inner > .row{
	width:100%;
	display: block;
	clear: both;
	padding-top:20px;
}

#main .inner .icon-B img{
	width: 40px;
	margin-bottom:0px;
	float: left;
}
#main .inner .icon-B p{
	padding:7px 0px 7px 50px;
}

#main .inner img.img-icon {
	width: 24px;
	margin-bottom:0px;
	vertical-align: middle;
}



/*Tips*/
#main .inner .Tips{
	padding: 10px;
	margin: 10px;
	background:lightgray;
	border-radius: 10px;
	font-size: 12px;
	hight:auto;
	overflow:auto;
}

#main .inner > .Tips img.img-L {
	width: calc(50%);
	max-width: 840px; /* 最大幅 */
	float: left;
	display: block;
	margin-bottom:20px;
}

#main .inner > .Tips img.img-R {
	width: calc(50%);
	max-width: 840px; /* 最大幅 */
	float: right;
	display: block;
	margin-bottom:20px;
}

#main .inner > .Tips> .row > .content-L p {
	padding: 10px;
	width: calc(50%);
	height:100%;
	word-break: break-all;
	display: block;
	float: left;
	margin-bottom:20px;
}

#main .inner > .Tips> .row > .content-R p {
	padding: 10px;
	width: calc(50%);
	height:100%;
	word-break: break-all;
	display: block;
	float: right;
	margin-bottom:20px;
}

/*通常*/
#main .inner img.img-L {
	width: calc(70%);
	max-width: 840px; /* 最大幅 */
	float: left;
	display: block;
	margin-bottom:20px;
}
#main .inner img.img-R {
	width: calc(70%);
	max-width: 840px; /* 最大幅 */
	float: right;
	display: block;
	margin-bottom:20px;
}

#main .inner .row{
	hight:auto;
	overflow:auto;
}

#main .inner > .row > .content-L p {
	width: calc(30%);
	padding:0px 10px;
	height:100%;
	word-break: break-all;
	display: block;
	float: left;
	margin-bottom:20px;
}




#main .inner > .row > .content-R p {
	width: calc(30%);
	height:100%;
	word-break: break-all;
	float: right;
	display: block;
	margin-bottom:20px;
}
#main .inner ul {
	padding-left:20px;
}


/* タイトル */
#main-title {
	background: #1d8885;
	padding-top: 65px;
	height: 100px;
	display: flex;
	width:calc(100% - 260px);
	max-width: 1250px; /* 最大幅 */
	position: fixed;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
}
#main-title h2{
	font-size: 180%;
	color: #ffffff;
}


hr {
	clear: both;
}

h3 {
	font-size: 131%;
	display: flex;
	clear: both;
	border: 1px solid #333333;
	border-radius: 10px;
	padding-left:10px;
	margin:10px 0px;
}


}
h4 {
	display: flex;
	clear: both;
}

.anchor_position{
	display: block;
	margin-top:-110px;
	padding-top:110px;
}

#main-content a{
	color:#1d8885;
}


/* コピーライト */
#copyright {
	color: #999999;
	text-decoration: none;
	width:100%;
	display: flex;
}


/*---------------------------------------------------*/
/*ヘッダーロゴ*/
/*---------------------------------------------------*/

#Page-header {
	position: fixed;
	color: #1d8885;
	background: #FFFFFF;

	text-align: center;
	z-index: 100;

	width: 100%;
	padding: 10px;
	display: -webkit-flex;
	display: flex;

}

#Page-header .logo{
	width: 40px;
	height: 40px;
	margin-right: 10px;
}

/*---------------------------------------------------*/
/*サイドバー*/
/*---------------------------------------------------*/
#sidebar {
	font-size: 15px;
	padding-top: 100px;
	width: 260px;
	height: 100%;
	position: fixed;
	color: #1d8885;
	background: #FFFFFF;
	text-align: left;
	overflow-y: scroll;
}

#Page-nav .localNavigation p {
	color: #999999;
	text-align: center;
}

#Page-nav .localNavigation summary {
	color: #1d8885;
	cursor:pointer;
}
#Page-nav .localNavigation summary:hover {
	font-weight:bold;
}
#Page-nav .details-content a {
	color: #555555;
	font-size: 60%;
	text-decoration: none;
	display: block;
	padding: 15px 10px 15px 20px;
	-moz-transition: background-color .3s linear;
	-webkit-transition: background-color .3s linear;
	transition: background-color .3s linear;
	
}

#Page-nav .details-content a:hover {
	color: #FFFFFF;
	background: #1d8885;
	padding: 15px 10px 15px 20px;
}


/*-------------------------------------*/
/*スクロールバー*/
/*-------------------------------------*/
::-webkit-scrollbar{
  width: 10px;
}
::-webkit-scrollbar-track{
  margin-top:103px;
  background: #FFFFFF;
  border: none;
  border-radius: 10px;
d}
::-webkit-scrollbar-thumb{
  background: lightgray;
  border-radius: 10px;
  box-shadow: none;
}


/*-------------------------------------*/
/*ハンバーガー*/
/*-------------------------------------*/

/* Page-hum */
#Page-hum {
	display: none;
	position: fixed;
	top: 18px;
	right: 15px;
	height: 32px;
}
#Page-hum > div {
	position: relative;
	width: 32px;
}
#Page-hum span {
	width: 100%;
	height: 3px;
	left: 0;
	display: block;
	background: #1d8885;
	position: absolute;
	-webkit-transition: .20s ease-in-out;
	-moz-transition: .20s ease-in-out;
	transition: .20s ease-in-out;
}

#Page-hum span:nth-child(1) {
	top: 0;
}
#Page-hum span:nth-child(2) {
	top: 11px;
}
#Page-hum span:nth-child(3) {
	top: 22px;
}


#overlay {
	display: none;
	position: fixed;
	background: rgba(0,0,0,.6);
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

/* ハンバーガーアニメーション */
details[open] .details-content {
  animation: fadeIn 0.5s ease;
}
@keyframes fadeIn {
  0% {
    opacity: 0; /* 透明 */
    transform: translateY(-10px); /* 上から表示 */
  }
  100% {
    opacity: 1;
    transform: none;
  }
}

/*-------------------------------------*/
/*スマホ時 */

@media screen and (max-width: 900px) {
	#main-content {
		padding-left: 0;
	}

	#main .inner {
		padding: 110px 5px 10px 5px;
	}
	#main-title {
		width:100%;
	}

	#sidebar {
		/*display: none;*/
		margin-top: 0px;
		padding-top: 60px;
		position: fixed;
		right: -300px;
		top: 0;
		height: 100%;
		width: 300px;
		color: #333;
		background: #fff;
		-webkit-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
	}

	#Page-hum {
		display: block;
	}

	/* nav open */
	.open {
		overflow: hidden;
	}
	.open #overlay {
		display: block;
	}
	.open #sidebar  {
		-webkit-transform: translate3d(-300px,0,0);
		transform: translate3d(-300px,0,0);
	}

	/* #Page-hum close */
	.open #Page-hum span:nth-child(1) {
		top: 11px;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.open #Page-hum span:nth-child(2) {
		width: 0;
		left: 50%;
	}
	.open #Page-hum span:nth-child(3) {
		top: 11px;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	/* z-index */
	#overlay {
		z-index: 200;
	}
	#main-title {
		z-index: 200;
	}

	#sidebar {
		z-index: 300;
	}
	#Page-header {
		z-index: 300;
	}

	#Page-hum {
		z-index: 400;
	}


	#main .inner img.img-qr{
		width: calc(60%);
	}

	#main .inner > .content-C img{
		width: 100%;
	}

	#main .inner > .row > .content-L img.img-L {
		width: 100%;
	}
	#main .inner > .row > .content-R img.img-R {
		width: 100%;
	}
	#main .inner > .row > .content-L p {
		width: 100%;
	}
	#main .inner > .row > .content-R p {
		width: 100%;
	}

	#main .inner > .Tips img.img-L {
		width: 100%;
	}

	#main .inner > .Tips img.img-R {
		width: 100%;
	}

	#main .inner > .Tips> .row > .content-L p {
		width: 100%;
	}

	#main .inner > .Tips> .row > .content-R p {
		width: 100%;
	}

}

@media screen and (max-width: 400px) {
	#sidebar {
		right: -200px;
		width: 200px;
		padding-top: 60px;
	}
	.open #sidebar  {
		-webkit-transform: translate3d(-200px,0,0);
		transform: translate3d(-200px,0,0);
	}
}

summary {
	padding: 10px;
}

.details-content a{
    margin: 0px 0px 0px 0px;
}

.details-content a:link, a:visited, a:hover, a:active {
    color: #FFFFFF;

}

.link_btn{
	background:#55e;
	color:#fff !important;
	font-size:12px;
	text-decoration:none;
	font-weight:bold;
	padding:3px 10px;
	border-radius:3px;
	margin:0 5px;
}
.link_btn:hover{
	opacity: 0.9;
}
