﻿@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,h7,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*================================================
 *  一般・共通設定
 ================================================*/
html {
	font-size: 62.5%;/* 16px x 0.625 = 10px(=1rem) */
}

body {
	font-size: 18px;
	color: #333;
	font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	line-height: 1.6;
	background: #f2f2f2;
	font-size: 1.6rem;/* 16px */
	-webkit-text-size-adjust: 100%;
	font-feature-settings: "palt";
}

.inner {
	position: relative;
	width: 980px;
	margin: 0 auto;
}

header {
	box-sizing: border-box;
	z-index: 10;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background: #fcfcfc;
	margin-right: auto;
	margin-left : auto;
}

nav {
	width: 100%;
}
nav:after {
	content: '';
	display: block;
	clear: both;
}

#contents {
	box-sizing: border-box;
	overflow: hidden;

	margin: 30px auto;
}

#main {
	box-sizing: border-box;
	overflow: hidden;
	padding: 10px;
	background: #fff;
}



#wide {
	box-sizing: border-box;
	padding: 10px;
	background: #fff;
}

footer {
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto;
}

a {
	color: #2a8064;
	text-decoration: underline;
}
a:hover {
	color: #2a8064;
	text-decoration: none;
}

h2 {
	padding: 30px 0;
	font-size: 26px;
	color: #2a8064;
	text-align: center;
	background: #e0e0e0;
}

h3 {
	
	padding: 3px 5px;
	color: #fff;
	font-size: 16px;
	background: #434343;
}

h4 {
	margin-bottom: 0.25em;
	font-size: 22px;
	color: #2a8064;
	border-bottom: 3px solid #2a8064;
	display: block;
	font-weight: bold;
}

h5 {
	position: relative;
	margin-bottom: 0.25em;
	padding-left: 10px;
	color: #333;
	font-size: 21px;
	font-weight: bold;
}
h5:before {
	content: "";
	margin-top: -7px;
	position: absolute;
	top: 50%;
	left: 0;
	width: 5px;
	height: 14px;
	background: #333;
}

h6 {
	margin-bottom: 0.25em;
	color: #382400;
	font-size: 14px;
	font-weight: bold;
}

h7 {
	margin: 0 0 0.5em 0;
	padding: 3px 5px;
	color: #fff;
	font-size: 18px;
	background: #3ebf96;
	display: block;
	margin-block-start: 1em;
    	margin-block-end: 1em;
    	margin-inline-start: 0px;
    	margin-inline-end: 0px;
    	font-weight: bold;

}

h8{
    padding: 0px 19px;
    color: #2c2c2f;
    font-size: 3.2em;
    font-family: "ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
    font-weight: bold;
    background: #cde4ff;
    border-top: solid 5px #5989cf;
    border-bottom: solid 5px #5989cf;
    display: block;
}

h8 p {
    margin: 0; 
    padding: 0;
}

h9 {
	margin: 0 0 0.5em 0;
	padding: 3px 5px;
	color: #fff;
	font-size: 21px;
	background: #3ebf96;
	display: block;
	margin-block-start: 1em;
    	margin-block-end: 1em;
    	margin-inline-start: 0px;
    	margin-inline-end: 0px;
    	font-weight: bold;

}

h10 {
	margin: 0 0 0.5em 0;
	padding: 3px 5px;
	color: #fff;
	font-size: 21px;
	background: #3ebf96;
	margin-block-start: 1em;
    	margin-block-end: 1em;
    	margin-inline-start: 0px;
    	margin-inline-end: 0px;
    	font-weight: bold;

}

h11 {
	margin: 0 0 0.5em 0;
	padding: 3px 5px;
	color: #fff;
	font-size: 21px;
	background: #d3e9ca;
	margin-block-start: 1em;
    	margin-block-end: 1em;
    	margin-inline-start: 0px;
    	margin-inline-end: 0px;
    	font-weight: bold;
	border-radius: 10px;
	display: 33%;

}

h12 {
	padding: 3px 5px;
	color: #fff;
	font-size: 18px;
	background: #3ebf96;
	display: block;
	margin-block-start: 1em;
    	margin-inline-start: 0px;
    	margin-inline-end: 0px;
    	font-weight: bold;

}


h13 {
	margin: 0 0 0.5em 0;
	padding: 15px 5px;
	color: #000;
	font-size: 16px;
	background: #f9f7e6;
	display: block;
}

h14{
	position:relative;
	padding:20px 10px;
	font-size:20px;
	border:1px solid #325A8C;
}
h14:after{
	content: "POINT";
	position: absolute;
	top: -8px;
	left: 10px;
	background: #fff;
	font-size: 12px;
	color: #325A8C;
	padding: 0 10px;
}

h15 {
  color: #505050;/*文字色*/
  padding: 0.5em;/*文字周りの余白*/
  display: inline-block;/*おまじない*/
  line-height: 1.3;/*行高*/
  margin: 5px 0px 0px 0px;
  width:43%;
  background: #dbebf8;/*背景色*/
  vertical-align: middle;
  border-radius: 25px 25px 25px 25px;/*左側の角を丸く*/
}

h15:before {
  content: '●';
  color: white;
  margin-right: 8px;
}

h16 {
  position: relative;
  padding-left: 25px;
  font-size:25px;
}

h16:before {
  position: absolute;
  content: '';
  bottom: -3px;
  left: 0;
  width: 0;
  height: 0;
  border: none;
  border-left: solid 15px transparent;
  border-bottom: solid 15px rgb(119, 195, 223);
}
h16:after {
  position: absolute;
  content: '';
  bottom: -3px;
  left: 10px;
  width: 100%;
  border-bottom: solid 3px rgb(119, 195, 223);
}


p {
	margin: 0 0 1em 0;
}

img {
	vertical-align: bottom;

}

em {
	font-weight: bold;
}

strong {
	font-weight: bold;
	color: #ff0000;
}

pre {
	margin: 1em 0;
	padding: 1em;
}

blockquote {
	margin-bottom: 1em;
	padding: 1em;
	border: 1px dotted #ddd;
	border-left: 5px solid #ddd;
}

ul,ol,dl {
	margin: 0 0 1em 0;
}

ol li {
	list-style: decimal;
}
li {
	margin-left: 2em;
}

dt {
	margin-bottom: 0.5em;
	border-bottom: 1px dotted #ddd;
}
dt:before {
	content: "\0025a0";
}
dd {
	margin-bottom: 1em;
}

table {
	width: 100%;
	margin-bottom: 1em;
	border-collapse: collapse;
	border: 1px solid #ddd;
	background: #fff;
}
th {
	padding: 10px;
	text-align: center;
	vertical-align: middle;
	border: 1px solid #ddd;
	background: #eee;
}
td {
	padding: 10px;
	text-align: left;
	border: 1px solid #ddd;
}

.border {
    border: 1px solid transparent;
}

/*================================================
 *  ヘッダー
 ================================================*/
header {
	background: #fff;
}

header > .inner {
	box-sizing:border-box;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: censpace-betweenter;
	justify-content: space-between;
	padding: 20px 0;
}

.summary {
	position: relative;
	margin: 0;
	padding-bottom: 5px;
	font-size: 12px;
}


.header_nav {
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;

	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;

	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: censpace-betweenter;
	/*justify-content: space-between;*/

}

.header_tel {
	line-height: 1.2;
}

.header_tel .phonenumber {
	font-size: 24px;
	font-weight: bold;
	line-height: 1.0;
}

.header_tel .open {
	font-size: 12px;
}

.header_require {
	margin: 0 20px;
}
.header_require a {
	display: block;
	padding: 10px 20px;
	color: #fff;
	font-weight: bold;
	border: 2px solid #3ebf96;
	border-radius: 5px;
	text-decoration: none;
	background: #3ebf96;
}
.header_require a:hover {
	color: #999;
	border: 2px solid #3ebf96;
	background: none;
}
.header_contact a {
	display: block;
	padding: 10px 20px;
	color: #fff;
	font-weight: bold;
	border: 2px solid #f80808;/*3ebf96*/
	border-radius: 5px;
	text-decoration: none;
	background: #f80808;/*3ebf96*/
}
.header_contact a:hover {
	color: #999;
	border: 2px solid #f80808;/*3ebf96*/
	background: none;
}

/*================================================
 *  グローバルナビゲーション
 ================================================*/
@media screen and (-webkit-min-device-pixel-ratio:0) {
	::i-block-chrome, body {
		font-feature-settings: "pkna";
	}
}

@media print, screen and (min-width:768px) {
	nav {
		background: #3ebf96;/*4A4949*/
		z-index: 3;
	}

	/* 共通 */
	nav ul {
		width: 100%;
		margin: 0;
		padding: 0;
	}

	nav ul li {
		position: relative;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	nav ul li a {
		display: block;
		margin: 0;
		padding: 16px 0;
		background: #3ebf96;/*メニュー色*/
		color: #FFF;
		font-size: 14px;
		font-weight: bold;
		line-height: 1;
		text-decoration: none;
	}

	nav ul li:hover > a {
		color: #FFF;
		background: #49e6b4;/*363535*/
	}

	/* 1段目 */
	nav ul.gnav > li {
		position: relative;
		width: 17%;
		float: left;
		margin: 0;
		padding: 0;
		text-align: center;
		list-style: none;
	}

	nav ul.gnav > li:first-child {
		width: 15%;
	}

	nav ul.gnav > li.subnav a {
		padding-right: 20px;
	}

	nav ul.gnav > li.subnav > a:after {
		position: absolute;
		content: "";
		top: 20px;
		width: 0;
		height: 0;
		margin-left: 10px;
		border: 5px solid transparent;
		border-top-color: #fff;
	}

	/* 2段目 */
	nav ul li ul {
		position: absolute;
		z-index: 3;
		top: 100%;
		left: 0;
		width: 100%;
		margin: 0;
		padding: 0;
	}

	nav ul li ul li {
		overflow: hidden;
		width: 150%;
		height: 0;
		color: #fff;
		transition: .2s;
	}

	nav ul li ul li a {
		padding: 13px 15px;
		text-align: left;
		/*二段目メニュー色*/
		background: #3ebf96;/*3d3d3d*/
		font-weight: normal;
	}

	nav ul li ul li a:hover {
		background: #49e6b4;/*363535*/
	}

	nav ul li:hover > ul > li {
		overflow: visible;
		height: 40px;
		border-bottom: 1px solid #464545;
	}

	nav ul li:hover ul li:last-child {
		border-bottom: none;
	}

	nav ul.gnav > li:last-child > ul {
		left: -50%;
	}

	nav ul li ul li ul:before {
		position: absolute;
		content: "";
		top: 13px;
		left: -20px;
		width: 0;
		height: 0;
		border: 5px solid transparent;
		border-left-color: #fff;
	}

	nav ul.gnav > li:last-child ul li ul:before {
		position: absolute;
		content: "";
		top: 13px;
		left: 200%;
		margin-left: -20px;
		border: 5px solid transparent;
		border-right-color: #fff;
	}

	/* 3段目 */
	nav ul li ul li ul {
		top: 0;
		left: 100%;
	}

	nav ul li ul li ul li {
		width: 100%;
	}

	nav ul li ul li:hover > ul > li {
		border-bottom: 1px solid #464545;
	}

	nav ul.gnav > li:last-child > ul li ul {
		left: -100%;
	}

	nav ul li ul li ul li a {
		background: #3ebf96;/*3d3d3d*/
	}

	nav ul li ul li ul li a:hover {
		background: #49e6b4;/*363535*/
	}

	.gnav {
		display: block !important;
	}

	#spMenu {
		display: none;
	}

	.fixed {
		position: fixed;
		top: 0;
		left: 0;
	}
}

/*================================================
 *  トピックパス（パンくずリスト）
 ================================================*/
#topicpath {
	font-size: 12px;
	padding: 20px 10px;
	background: #fcfcfc;
}

#topicpath .inner {
	width: 980px;
	margin: 0 auto;
}

/*================================================
 *  サブコンテンツ
 ================================================*/
.submenu li {
	margin: 0;
	padding: 0;
	list-style: none;
	display: inline;
}
.submenu li a:before {
	content: "\0025a0";
	color: #000;
}
.submenu li a {
	display: block;
	padding: 10px 2px;
	color: #000;
	border-bottom: 1px dotted #ddd;
	text-decoration: none;
}
.submenu li a:hover {
	background: #eee;
}

.bnr {
	overflow: hidden;
}
.bnr ul {
	overflow: hidden;
}
.bnr li {
	margin: 0 0 10px 0;
	padding: 0;
	list-style: none;
}
.bnr li a:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}
.bnr img {
	width: 100%;
}

/*================================================
 *  フッター
 ================================================*/
footer {
	clear: both;
}

.footmenu {
	width: 100%;
	padding: 20px 0;
	overflow: hidden;
	background: #fff;
}
.footmenu ul {
	position: relative;
	float: left;
	left: 50%;
	margin: 0;
	padding: 0;
}
.footmenu li {
	position: relative;
	left: -50%;
	float: left;
	list-style: none;
	margin: 0;
	padding: 0 15px;
	font-size: 12px;
	text-align: center;
}
.footmenu a {
	color: #333;
	text-decoration: none;
}
.footmenu a:hover {
	color: #2a8064;
	text-decoration: underline;
}

.copyright {
	clear: both;
	padding: 20px 0;
	font-size: 11px;
	text-align: center;
	color: #efede9;
	background: #2e2e2e;
}

/*================================================
 *  ページトップへの戻り
 ================================================*/
.totop {
	position: fixed;
	bottom: 15px;
	right: 15px;
}
.totop a {
	display: block;
	text-decoration: none;
}
.totop img {
	background: #666;
}
.totop img:hover {
	background: #555;
}

/*================================================
 *  クラス
 ================================================*/
.list {
	padding: 0 0 0 0.5em;
}
.list li {
	margin: 0;
	padding: 0 0 0 15px;
	list-style: none;
	background: url(../images/check.png) 0 5px no-repeat;
}

.info dt {
	border-bottom: none;
}
.info dd {
	padding-bottom: 1em;
	border-bottom: 1px solid #ddd;
}

.col_two_one {
	overflow: hidden;
}

.col_two_one ul {
	overflow: hidden;
	margin: 2% -2% 0 0;
}
.col_two_one li {
	list-style: none;
	float: left;
	width: 48%;
	margin: 0 2% 2% 0;
}
.col_two_one li:nth-child(2n+1) {
	clear: both;
}
.col_two_one li img {
	width: 100%;
	margin-bottom: 2.5%;
}

/*================================================
 *  スライドショー
 ================================================*/
/* スライドショー */
.slide {
	display: none;
	position: relative;
	overflow: hidden;
	margin: 20px 0 0 0;
}

.slidePrev {
	position: absolute;
	cursor: pointer;
	z-index: 2;
}

.slideNext {
	position: absolute;
	cursor: pointer;
	z-index: 2;
}

.slidePrev img {
	position: absolute;
	width: 50px !important;
	height: 60px !important;
}

.slideNext img {
	position: absolute;
	width: 50px !important;
	height: 60px !important;
}

.slideInner {
	position: relative;
	margin: 0 0 5px 0;
	padding: 0;
}
.slideInner li {
	float: left;
	margin: 0;
	padding: 0;
	list-style: none;
}
.slideInner li img {
	margin: 0 5px;
	padding: 0;
}

.filterPrev {
	position: absolute;
	left: 0;
	opacity: 0.5;
	filter: alpha(opacity=50);
	background-color: #fff;
}

.filterNext {
	position: absolute;
	right: 0;
	opacity: 0.5;
	filter: alpha(opacity=50);
	background-color: #fff;
}

.controlNav {
	position: relative;
	float: left;
	left: 50%;
}
.controlNav span {
	position: relative;
	left: -50%;
	float: left;
	margin: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	width: 10px;
	height: 10px;
	overflow: hidden;
	background: #ccc;
	text-indent: -9999px;
	vertical-align: middle;
}
.controlNav span:hover {
	background: #999;
	cursor: pointer;
}
.controlNav span.current {
	background: #3ebf96;
}

/*================================================
 *  タブレット向けデザイン
 ================================================*/
/* スクロールバーを考慮して20px大きいサイズで切り替え */
@media screen and (max-width:979px) {
	header > .inner {
		padding: 0 10px;
	}

	.inner {
		width: 100%;
	}

	#contents {
		width:100%;
		margin: 10px 0;
		padding: 0 10px;
	}

	#wide {
		width:100%;
		margin: 10px 0;
		padding: 10px;
	}

	#topicpath .inner {
		width: 100%;
	}

	footer {
		width: 100%;
	}
}

/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
/*改行*/
@media screen and (min-width: 650px){	
  .br-pc { display:block; }
  .br-sp { display:none; }
}
@media screen and (max-width: 650px){	
  .br-pc { display:none; }
  .br-sp { display:block; }
}


/*ここまで*/

@media screen and (max-width:767px) {
	.lock {
		overflow: hidden;
	}

	header {
		padding: 15px 10px;
	}

	header > .inner {
		display: block;
		padding: 0;
	}

	header h1 {
		margin-bottom: 10px;
	}

	.summary {
		margin-right: 40px;
		font-size: 10px;
	}

	.header_tel .phonenumber {
		font-size: 18px;
	}

	.header_tel .open {
		font-size: 10px;
	}

	.header_require {
		margin: 0 2px;
	}

	.header_require a {
		padding: 5px 10px;
		font-size: 12px;
	}

	.header_contact {
		margin: 0 5px;
	}
	.header_contact a {
		padding: 5px 10px;
		font-size: 12px;
	}

	nav {
		background: #4A4949;
	}
	nav ul {
		margin: 0;
		padding: 0;
		}

	nav .inner > ul {
		z-index: 2;
		overflow: auto;
		position: fixed;
		top: 53px;
		right: 0;
		width: 100%;
		height: 88%;
		height: -webkit-calc(100% - 53px);
		height: calc(100% - 53px);
	}
	nav li {
		position: relative;
		width: 100%;
		float: none;
		margin: 0;
		text-align: left;
		list-style: none;
		border-bottom: 1px solid #444;
		background: #000000;/*4A4949*/
	}

	nav li:first-child {
		border-top: 0;
	}
	nav li:last-child {
		border-bottom: 0;
	}

	nav li a {
		display: block;
		padding: 10px 30px;
		color: #fff;
		text-decoration: none;
		background: #3ebf96;/*4A4949*/
	}
	nav li a:hover {
		color: #fff;
		background: #49e6b4;/*363535*/
	}
	nav ul ul {
		display: none;
		position: relative;
	}
	nav li li a {
		box-sizing: border-box;
		width: 100%;
		padding: 10px 30px 10px 50px;
		text-align: left;
	}

	nav li li li a {
		padding: 10px 30px 10px 70px;
	}

	.subnav > a:before {
		display: block;
		content: "";
		position: absolute;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		top: 20px;
		right: 30px;
		width: 10px;
		height: 10px;
		margin-top: -5px;
		background: #f1f1f1;
	}
	.subnav > a:after {
		display: block;
		content: "";
		position: absolute;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		top: 20px;
		right: 30px;
		width: 10px;
		height: 10px;
		margin-top: -10px;
		background: #4A4949;
	}
	.subnav a:hover:after {
	  background: #363535;
	}

	.active > a:before {
		margin-top: 0;
	}
	.active > a:after {
		margin-top: 5px;
	}

	.gnav {
		display: none;
	}

	#spMenu {
		display: block;
		z-index: 2;
		position: fixed;
		top: 10px;
		right: 10px;
	}
	#spMenu:hover {
		cursor: pointer;
	}

	#navBtn {
		display: inline-block;
		position: relative;
		width: 30px;
		height: 30px;
		border-radius: 5%;
		background: #000;
	}
	#navBtnIcon {
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 14px;
		height: 2px;
		margin: -1px 0 0 -7px;
		background: #f1f1f1;
		transition: .2s;
	}
	#navBtnIcon:before,
	#navBtnIcon:after {
		display: block;
		content: '';
		position: absolute;
		top: 50%;
		left: 0;
		width: 14px;
		height: 2px;
		background: #f1f1f1;
		transition: 0.3s;
	}
	#navBtnIcon:before {
		margin-top: -6px;
	}
	#navBtnIcon:after {
		margin-top: 4px;
	}
	#navBtn .close {
		background: transparent;
	}
	#navBtn .close:before,
	#navBtn .close:after {
		margin-top: 0;
	}
	#navBtn .close:before {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	#navBtn .close:after {
		-webkit-transform: rotate(-135deg);
		transform: rotate(-135deg);
	}

	#main {
		float: none;
		width: 100%;
	}

	#sub {
		float: none;
		width: 100%;
	}

	.slide {
		margin: 0;
	}

	.col_two_one ul {
		margin-right: 0;
	}
	.col_two_one li {
		width: 100%;
	}
	.col_two_one li:nth-child(2n+1) {
		clear: both;
	}
}

/*BOXスタイル*/
.box {
    padding: 0;
    margin: 0;
    color: #000000;
    background: #FFFFFF;/*背景色*/
    display: block;
}
.box p {
    margin: 0; 
    padding: 0;
}
.box3 {
    padding: 0.5em 1em;
    margin: 2em 0;
    color: #2c2c2f;
    background: #cde4ff;/*背景色*/
    float: left;
    width: 50%;
}

.box3 p {
    margin: 0; 
    padding: 0;
}

.box8 {
    
    
    color: #232323;
    background: #fff8e8;
   /* border-left: solid 10px #ffc06e;*/
    border-radius: 10px;
}
.box8 p {
    margin: 0; 
    padding: 0;
}

.box10 {
    padding: 0.5em 1em;
    /*margin: 2em 0;*/
    color: #00BCD4;
    background: #8ec9d04d;/*背景色*/
    border-top: solid 6px ##8ec9d04d;
    box-shadow: 0 3px 4px rgba(0, 0, 0, 0.32);/*影*/
}
.box10 p {
    margin: 0; 
    padding: 0;
    font-size: 1.5em;
}



.box13 {
    padding: 0.5em 1em;
    margin: 10px 10px 10px 10px;/*2em 0*/
    color: #FFF;
    background: #6eb7ff;
    border-bottom: solid 6px #3f87ce;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
    border-radius: 9px;
}
.box13 p {
    margin: 10px 0 0 0; 
    padding: 40px 0px 10px 0px;
    font-size: 3.5em;
    font-family: "ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
}

.box17{
    margin:2em 0;
    position: relative;
    padding: 0.5em 1.5em;
    border-top: solid 2px black;
    border-bottom: solid 2px black;
}
.box17:before, .box17:after{
    content: '';
    position: absolute;
    top: -10px;
    width: 2px;
    height: -webkit-calc(100% + 20px);
    height: calc(100% + 20px);
    background-color: black;
}
.box17:before {left: 10px;}
.box17:after {right: 10px;}
.box17 p {
    margin: 0; 
    padding: 0;
}
.box24 {
    position: relative;
    padding: 0.5em 0.7em;
    margin: 2em 0;
    background: #e6f4ff;
    color: #5c98d4;
    font-weight: bold;
}
.box24:after {
    position: absolute;
    content: '';
    top: 100%;
    left: 30px;
    border: 15px solid transparent;
    border-top: 15px solid #e6f4ff;
    width: 0;
    height: 0;
}
.box24 p {
    margin: 0; 
    padding: 0;
}

.box25{
    position: relative;
    background: #fff0cd;
    box-shadow: 0px 0px 0px 5px #fff0cd;
    border: dashed 2px white;
    padding: 0.2em 0.5em;
    color: #454545;
}
.box25:after{
    position: absolute;
    content: '';
    right: -7px;
    top: -7px;
    border-width: 0 15px 15px 0;
    border-style: solid;
    border-color: #ffdb88 #fff #ffdb88;
    box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.15);
}
.box25 p {
    margin: 0; 
    padding: 0;
}

.box26 {
    position: relative;
    margin: 1.5em 0;
    padding: 0.5em 1em;
    border: solid 3px #95ccff;
    border-radius: 8px;
}

.box26 .box-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    text-align: center;
    padding: 0 9px;
    line-height: 1;
    font-size: 1.5em;
    background: #ffffff;
    color: #95ccff;
    font-weight: bold;
}
.box26 p {
    margin: 0; 
    padding: 0;
}
.box28 {
    position: relative;
    margin: 2em 0;
    padding: 25px 10px 7px;
    border: solid 2px #FFC107;
}
.box28 .box-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #FFC107;
    color: #ffffff;
    text-align: center;
    font-weight: bold;
}
.box28 p {
    margin: 0; 
    padding: 0;
}
.box29 {
    margin: 2em 0;
    background: #dcefff;
}
.box29 .box-title {
    font-size: 1.2em;
    background: #000000;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box29 p {
    padding: 15px 20px;
    margin: 0;
}
.box100, .box101, .box102, .box103, .box104{
  float: left;
  border-color: yellow;
  width: 50%;
}

.box101 li{
	margin: 0 0 0.5em 0;
	padding: 3px 5px;
	color: #fff;
	font-size: 16px;
	background: #3ebf96;
	display: block;
	margin-block-start: 1em;
    	margin-block-end: 1em;
    	margin-inline-start: 0px;
    	margin-inline-end: 0px;
    	font-weight: bold;
}

.box301 {
    padding: 0.5em 1em;
    margin: 2em 0;
    color: #2c2c2f;
    background: #f9f7e6;/*背景色*/
    float: left;
    width: 50%;
}

.box301 p {
    margin: 0; 
    padding: 0;
}

.boxA {
  border: none;
  &:after {
    content: "";
    display: block;
    clear: both;
  }
}

/*動画レスポンシブ*/
.video{
  position:relative;
  width:100%;
  padding-top:56.25%;
}
.video iframe{
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}

/*かぶり案件*/

 .side_nav ul li a, {
  -webkit-transform-style: preserve-3d;
  -webkit-transition: all .2s;
  transition: all .2s; 
}
side_nav ul li a:hover,  {
    filter: alpha(opacity=60);
    -moz-opacity: 0.60;
    opacity: 0.60; 
}

.side_nav2 {
    margin-top: 20px;
    background: #f9f7e6;
    padding: 10px 10px 5px 10px; 
}

.side_nav2 ul li {
      margin-bottom: 4px; 
}
.side_nav2 ul li:last-child {
      margin: 0;
 }
.sidebar {
  width: 240px;
  float: right;*
  margin-top: 15px; }
  .sidebar .side_hours {
    margin-top: 14px; }
    .sidebar .side_hours div {
      background: #ebf7e7;
      padding: 10px 10px 15px; }
  .sidebar .side_access {
    margin-top: 20px; }
    .sidebar .side_access .side_access_wrap {
      background: #f9f7e6;
      padding: 10px 10px 15px; }
      .sidebar .side_access .side_access_wrap .icon_map {
        background: url(../images/common/icon_map.png) no-repeat 80px center;
        margin-bottom: 5px;
        text-align: right; }
      .sidebar .side_access .side_access_wrap p {
        line-height: 1.5; }
  .sidebar .side_inquiry {
    margin-top: 20px; }
    .sidebar .side_inquiry .side_inquiry_wrap {
      background: #ebf7e7;
      padding: 10px 10px 15px;
      text-align: center; }
      .sidebar .side_inquiry .side_inquiry_wrap p {
        font-size: 14px;
        text-align: left;
        line-height: 1.5; }
    .sidebar .side_inquiry table {
      margin: 0 0 10px 3px; }
  .sidebar .side_nav {
    margin-top: 20px;
    background: #f9f7e6;
    padding: 10px 10px 5px 10px; }
    .sidebar .side_nav ul li {
      margin-bottom: 4px; }
    .sidebar .side_nav ul li:last-child {
      margin: 0; }
  .sidebar .side_bnr_en {
    text-align: center;
    margin-top: 20px; }

/*グーグルマップ*/
.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.map img{
	float: left;
	width:50%;
	max-width: 50%;
	height: auto;
}

.map2 img{
	float: left;
	width:100%;
	max-width: 100%;
	height: auto;
	
}

.map32 img{
	float: left;
	width:17%;
	max-width: 17%;
	height: auto;
	
}
.icon_foot {
        background: url(http://shinai-clinic.com/assets/images/outpatient/icon_access01.png) no-repeat 0 0;
}

.icon_car {
        background: url(http://shinai-clinic.com/assets/images/outpatient/icon_access02.png) no-repeat 0 0; 
}

.icon_tax {
        background: url(http://shinai-clinic.com/assets/images/outpatient/icon_access03.png) no-repeat 0 0; 
}


.zaita{
	
}

.access_title h7 {
        border-top: solid 3px #3dba8e;
        /*padding: 12px 0 0;*/
        margin-bottom: 20px;
        font-size: 170%;
        line-height: 1.3;
        margin-left: 58px;
        border-bottom: 0; 
}
.access_title h7 span {
          margin-left: 10px;
          display: block;
          padding-bottom: 10px;
          border-bottom: dotted 1px #6b6b6b; 
}

/*訪問*/
dd.service04 {
          background: url() no-repeat rgba(255, 255, 255, 0.8);
 }

.category_long {
            color: #3dba8e;
            font-size: 16px;
            /*display: block;*/
            margin-top: 12px;
            line-height: 1.7;
            /*padding-left: 105px;*/ 
	    baseline: top;
}

 .service_contents_main dd h2 {
            font-size: 30px;
            line-height: 1.1;
            padding-left: 105px;
 }

.service_contents_caution ul li {
            background: url(http://shinai-clinic.com//assets/images/service/icon_check.png) no-repeat left center;
            padding: 5px 0 3px 25px; 
}

/*リスト*/
.service_contents_list {
        display: inline-block;
        width: 315px;
        margin: 20px 7px 0;
        vertical-align: top;   /* 上端を揃える */
 }

.service_contents_list nav {
          text-align: left; 
}

.service_contents_list nav h2 {
            line-height: 0;
            margin-bottom: 1px; 
}

.service_contents_list nav ul li a {
            background: url(/assets/images/common/side_arrow.png) no-repeat 15px center #f5e8c9;
            margin-bottom: 1px;
            display: block;
            padding: 8px 0 8px 25px;
            color: #000; 
}
.service_contents_caution table {
          margin: 15px 20px; }
          .service .wrap .service_contents .service_contents_box .service_contents_caution table td span {
            color: #3dba8e; }
          .service .wrap .service_contents .service_contents_box .service_contents_caution table td span.number {
            color: #333;
            font-size: 160%; }
          .service .wrap .service_contents .service_contents_box .service_contents_caution table td .under_line {
            border-bottom: dotted 1px #333;
            margin-bottom: 5px;
            padding-bottom: 5px; }
          .service .wrap .service_contents .service_contents_box .service_contents_caution table th.label {
            color: #FFF;
            background: #3dba8e;
            border-radius: 5px;
            /* CSS3草案 */
            -webkit-border-radius: 5px;
            /* Safari,Google Chrome用 */
            -moz-border-radius: 5px;
            /* Firefox用 */
            padding: 2px 10px;
            text-align: center;
            display: block;
            margin-right: 10px;
            width: 75px; }
          .service .wrap .service_contents .service_contents_box .service_contents_caution table table {
            margin: 0 0 15px;
            width: 100%; }
            .service .wrap .service_contents .service_contents_box .service_contents_caution table table th {
              width: 160px; }
        .service .wrap .service_contents .service_contents_box .service_contents_caution p {
          padding: 0 20px 15px 20px;
 }

service_contents_caution{
	background: #3dba8e;
}

section table { width: 100%; }
section th, section td  { padding: 10px; border: 1px solid #ddd; }
section th  { background: #f4f4f4; }
 
/*----------------------------------------------------
  .demo02
----------------------------------------------------
*/.dr-table.outpatient_week {
    text-align: center;
    font-size: 14px;
}
.dr-table.outpatient_week th {
    width: auto;
    background: #3dba8e;
    padding: 5px;
}
.dr-table.outpatient_week .week_top th {
    border-left: 1px solid #FFF;
    border-bottom: 1px solid #fff;
}
.dr-table.outpatient_week .week_top th:first-child {
    border-left: none;
}
.outpatient_week tr:nth-child(2) td,
.outpatient_week tr:nth-child(7) td,
.outpatient_week tr:last-child td {
    border-top: 1px solid #3dba8e;
}
.outpatient_week tr:nth-child(2) th,
.outpatient_week tr:nth-child(7) th,
.outpatient_week tr:last-child th {
    border-top: 1px solid #fff;
}
.dr-table.outpatient_week td {
    width: auto;
    padding: 5px;
    border-right: 1px solid #eee;
}
.dr-table.outpatient_week td:last-child {
    border-right: none;
}
.dr-table.outpatient_week tr:nth-child(8) td:last-child {
    border-right: 1px solid #eee;
}
.dr-table.outpatient_week td span.w_time {
    color: #3dba8e;
    display: block;
    font-size: 70%;
}
.dr-table.outpatient_week td .week {
    color: #333;
    display: block;
    font-size: 70%;
}
.dr-table.outpatient_week td .green {
    color: #3dba8e;
    display: block;
    font-size: 70%;
}
.outpatient_week tr.week_yerrow td {
    background: #f9f7e6;
}

.dr-table {
    border-collapse: collapse;
    border: 1px solid #ccc;
    font-size: 14px;
    line-height: 1.4;
}
.dr-table th {
    width: 25%;
    color: #fff;
    font-weight: normal;
    background: #3dba8e;
    padding: 15px;
    border-top: 1px dotted #000;
}
.dr-table td {
    width: 75%;
    background: #fff;
    padding: 15px;
    border-top: 1px dotted #3dba8e;
}
.dr-table tr:first-child th,
.dr-table tr:first-child td {
    border-top: none;
}
.dr-table.outpatient_week {
    text-align: center;
    font-size: 14px;
}
.dr-table.outpatient_week th {
    width: auto;
    background: #3dba8e;
    padding: 5px;
}
.dr-table.outpatient_week .week_top th {
    border-left: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
.dr-table.outpatient_week .week_top th:first-child {
    border-left: none;
}

.dr-table.outpatient_week td {
    width: auto;
    padding: 5px;
    border-right: 1px solid #000000;
}
.dr-table.outpatient_week td:last-child {
    border-right: none;
}
.dr-table.outpatient_week tr:nth-child(8) td:last-child {
    border-right: 1px solid #eee;
}
.dr-table.outpatient_week td span.w_time {
    color: #3dba8e;
    display: block;
    font-size: 70%;
}
.dr-table.outpatient_week td .week {
    color: #333;
    display: block;
    font-size: 70%;
}
.dr-table.outpatient_week td .green {
    color: #3dba8e;
    display: block;
    font-size: 70%;
}

/*botan*/

.btn-gradient-radius {
  display: inline-block;
  padding: 7px 10px;
  border-radius: 25px;
  margin:20px 3% 0 3%;
  text-decoration: none;
  color: #FFF;
  background-image: linear-gradient(45deg, #FFC107 0%, #ff8b5f 100%);
  transition: .4s;
}

.btn-gradient-radius:hover {
  background-image: linear-gradient(45deg, #FFC107 0%, #f76a35 100%);
}

.topic {
    width: 100%;
    height: 111px;
    background: url(http://shinai-clinic.com/sp/assets/images/bg-h.jpg);
    overflow: hidden;
}
.topic h1 {
    margin: 30px 20px 0;
    color: #333;
    font-size: 36px;
}

/*●ボタン*/
.btn-circle-3d-dent {
  display: inline-block;
  text-decoration: none;
  background: #5dc3d0;
  color: rgb(82, 142, 150);
  width: 122px;
  font-size: 20px;
  height: 120px;
  line-height: 120px;
  border-radius: 50%;
  text-align: center;
  overflow: hidden;
  box-shadow: inset 0px 3px 0 rgba(255,255,255,0.3), 0 3px 3px rgba(0, 0, 0, 0.3);
  font-weight: bold;
  border-bottom: solid 3px #549fa9;
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.65);
  transition: .4s;
}

.btn-circle-3d-dent:active {
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.35);
  border-bottom: none;
}

/*吹き出し*/
.balloon1-top {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #555;
  font-size: 16px;
  background: #e0edff;
}

.balloon1-top:before {
  content: "";
  position: absolute;
  top: -30px;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-bottom: 15px solid #e0edff;
}

.balloon1-top p {
  margin: 0;
  padding: 0;
}

/* 3カラム（スマートフォンでは1カラム) */
.threeCol {
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: censpace-betweenter;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	position: relative;
	overflow: hidden;
	margin-bottom:60px;
}
.threeCol .inner {
	position: relative;
	overflow: hidden;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: censpace-betweenter;
	justify-content: space-between;
	-ms-flex-direction: normal;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	flex-direction: column;
	width: 32.14%;
	width: calc((315 / 980) *100%);
	margin: 0 0 20px 0;
}
.threeCol .inner:nth-child(3n+1) {
	clear:both;
}
.threeCol .inner h4 {
	width: 100%;
	margin-top: 0.5em;
	text-align: left;
}
.threeCol .inner p {
	width: 100%;
	margin-bottom: 0;
	text-align: justify;
}
.threeCol .inner > a {
	width: 100%;
	height: 100%;
}
.threeCol .inner .image {
	
	min-height: 0%;
}
.threeCol .inner img {
	
}
.threeCol .inner .btn {
	margin-top: auto;
	padding-top: 20px;
}
.threeCol .inner .text {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	vertical-align: middle;
	pointer-events: none;
}

@media screen and (max-width:767px) {
	.threeCol {
		display: block;
		margin-bottom: 20px;
	}
	.threeCol .inner {
		width : 100%;
		margin: 0 0 10px 0;
	}
}

.inner {
	position: relative;
	width: 980px;
	margin: 0 auto;
}


/*見出し*/
ul.cp_list {
	position: relative;
	padding: 0.5em;
	border: solid 1px #AB47BC;
	list-style-type: none;
}
ul.cp_list li {
	padding: 0.5em 0 0.5em 1.4em;
	line-height: 1.5;
	border-bottom: 1px dashed #AB47BC;
}
ul.cp_list li::before {
	position: absolute;
	content: "
ul.cp_list {
position: relative;
padding: 0.5em;
border: solid 1px #AB47BC;
list-style-type: none;
}
ul.cp_list li {
padding: 0.5em 0 0.5em 1.4em;
line-height: 1.5;
border-bottom: 1px dashed #AB47BC;
}
ul.cp_list li::before {
position: absolute;
content: "\002713";
color: #AB47BC;
font-weight: bold;
left : 0.5em;
}
ul.cp_list li:last-of-type {
border-bottom: none;
}
2713";
	color: #AB47BC;
	font-weight: bold;
	left : 0.5em;
}
ul.cp_list li:last-of-type {
	border-bottom: none;
}

/*outp*/
.example {
  position: relative;
  }

.example p {
  position: absolute;
  top: 100%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;
  /*文字の装飾は省略*/
  }

.example img {
  width: 40%;
  float: left;
  }


/*service*/
.inline-block_test {
    display: inline-block;      /* インラインブロック要素にする */
    background-color:  #ccc;    /* 背景色指定 */
    padding:  20px;             /* 余白指定 */
    height: 100px;              /* 高さ指定 */
}

/*test000*/
table{
  width: 100%;
  border-collapse: collapse;
}

table tr{
  border-bottom: solid 2px black;
}

table tr:last-child{
  border-bottom: none;
}

table th{
  position: relative;
  text-align: left;
  width: 30%;
  background-color: #52c2d0;
  color: white;
  text-align: center;
  padding: 10px 0;
}

table th:after{
  display: block;
  width: 0px;
  height: 0px;
  position: absolute;
  top:calc(50% - 10px);
  right:-10px;
  border-left: 10px solid #52c2d0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}

table td{
  text-align: left;
  width: auto;
  text-align: center;
  background-color: #FFFFFF;
  padding: 10px 0;
}

/**test**/

#nav-toggle {
    position: fixed;
    top: 25px;
    right: 25px;
    height: 32px;
    cursor: pointer;
    
  > div {
    position: relative;
    width: 36px;
  }
  span {
    width: 100%;
    height: 1px;
    left: 0;
    display: block;
    background: #333;
    position: absolute;
    transition: transform .6s ease-in-out, top .5s ease;
    
    &:nth-child(1) {
      top: 0;
    }
    &:nth-child(2) {
      top: 14px;
    }
    &:nth-child(3) {
      top: 28px;
    }
  }

  &:hover span:nth-child(1) {
    top: 4px;
  }
  &:hover span:nth-child(3) {
    top: 23px;
  }

}

.open {
  #nav-toggle span {
    background: #fff;
    
    &:nth-child(1) {
      top: 15px;
      transform: rotate(45deg);
    }
    &:nth-child(2) {
      top: 15px;
      width: 0;
      left: 50%;
    }
    &:nth-child(3) {
      top: 15px;
      transform: rotate(-45deg);
    }
  }
}

/* z-index */
#nav-toggle {
    z-index: 1000;
}
#container {
    z-index: 900;
}

#gloval-nav {
    background: #000;
    color: #fff;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 990;
    text-align: center;
    display: flex;
    visibility: hidden;
  flex-direction: column;
  justify-content: center;
  align-items: center;
    font-size: 29px;
    opacity: 0;
    transition: opacity .6s ease, visibility .6s ease;
}


#gloval-nav {
  a {
    display: block;
    color: #fff;
    text-decoration: none;
    padding: 10px 0;
    transition: color .6s ease;
    
    &:hover {
      color: #666;
    }
  }
  
  ul {
    list-style: none;
    
    li {
      opacity: 0;
      transform: translateX(200px);
      transition:  transform .6s ease, opacity .2s ease;

      &:nth-child(2) {
        transition-delay: .15s;
      }
      &:nth-child(3) {
        transition-delay: .3s;
      }
      &:nth-child(4) {
        transition-delay: .45s;
      }
      &:nth-child(5) {
        transition-delay: .6s;
      }
      &:nth-child(6) {
        transition-delay: .75s;
      }
      &:nth-child(7) {
        transition-delay: .9s;
      }
    }
  }
} 

/* open */
.open {
    overflow: hidden;
  
  #gloval-nav {
    visibility: visible;
    opacity: 1;
  }

  #gloval-nav li {
    opacity: 1;
    transform: translateX(0);
    transition:  transform 1s ease, opacity .9s ease;
  }
}

/*PCスマホ画像変更システム*/
#contents img.pc-image {
	text-align: center;
}
#contents img.sp-image {
	display: none;
	text-align: center;
}
#contents p.pc-words {
	margin-top: 1em;
	font-size: 2.5em;
}
#contents p.sp-words {
	display: none;
	margin-top: 1em;
	font-size: 1.5em;
}
 
@media only screen and (max-width : 640px){
#contents img.pc-image,
#contents p.pc-words {
	display: none;
}
#contents img.sp-image,
#contents p.sp-words {
	display: block;
}
}

/*QA*/
.cp_qa *, .cp_qa *:after, .cp_qa *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_qa {
	border-top: 1px solid #1b2538;
}
.cp_qa .cp_actab {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin-bottom: 1px;
	color: #1b2538;
}
.cp_qa .cp_actab input {
	position: absolute;
	opacity: 0;
}
/* 質問 */
.cp_qa .cp_actab label {
	font-weight: bold;
	line-height: 1.6;
	position: relative;
	display: block;
	margin: 0 0 0 0;
	padding: 1em 2em 1em 1em;
	cursor: pointer;
	border-bottom: 1px solid #1b2538;
	background: #acfff747;
}
.cp_qa .cp_actab label:hover {
	color: #00838F;
}
/* 答え */
.cp_qa .cp_actab .cp_actab-content {
	overflow: hidden;
	max-height: 0;
	-webkit-transition: max-height 0.5s ease;
	        transition: max-height 0.5s ease;
	color: #000000;
	background: rgba(0, 131, 143, 0.5);
}
.cp_qa .cp_actab .cp_actab-content p {
	margin: 1em;
}
/* 質問を開いた時の仕様 */
/* --アイコン */
.cp_qa .cp_actab input:checked ~ label {
	color: #00838F;
}
/* --答えの高さ */
.cp_qa .cp_actab input:checked ~ .cp_actab-content {
	max-height: 40em;
}
/* 質問をクリックした時のアイコンの動き */
.cp_qa .cp_actab label::after {
	line-height: 1.6;
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	width: 3em;
	margin-top: -12.5px;
	-webkit-transition: all 0.5s ease;
	        transition: all 0.5s ease;
	text-align: center;
}
.cp_qa .cp_actab input[type=checkbox] + label::after {
	content: '▼';
}
.cp_qa .cp_actab input[type=checkbox]:checked + label::after {
	-webkit-transform: rotateX(180deg);
	transform: rotateX(180deg);
}
/*ここまで*/

.demo8 .heading {
  overflow: hidden;
  align-items: center;
  background: #3cb3e4;
  color: #fff;
  height: 40px;
  line-height: 40px;
  display: flex;
}
.demo8 .heading:before,
.demo8 .heading:after {
  content: "";
  flex: 1;
  background: #fff;
  padding: 3px 0;
  height: 0;
  transform: rotate(45deg);
  }
}

.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}


.rwdBox{
    border:1px solid gray;
    margin:2px 2px 5px 2px;
}
.leftTop{
    padding:5px;
    text-align:center;
    width:97%;
}
.rightBottom{
    padding:5px;
    width:97%;
}
 

.rwd2Box{
    border:1px solid red;
    margin:2px 2px 5px 2px;
}
.leftTop{
    padding:5px;
    text-align:left;
    width:97%;
}
.rightBottom{
    padding:5px;
    width:97%;
}


/* モバイル表示 */
@media only screen and (max-width : 640px){
    .rwdBox img{
        max-width:100%;
    }
}
 
/* PC表示 */
@media only screen and (min-width : 641px){
    .rwdBox{
        overflow:auto;
    }
    .leftTop{
        float:left;
        width:35%;
    }
    .rightBottom{
        width:63%;
        overflow:auto;
    }
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.ppc { display: block !important; }
.psp { display: none !important; }
/* スマートフォンで見たときは"psp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
.ppc { display: none !important; }
.psp { display: block !important; }
}

#pcontainer {
  max-width: 1026px;
  margin: 0 auto;
}
#pmain {
  width: 100%;
}


.boxAA {
    padding: 0.5em 1em;
    margin: 2em 0;
    border: solid 1px #ff0000;
}
.boxAA p {
    margin: 0; 
    padding: 0;
}

#contents p.pc-words {
	margin-top: 1em;

}
#contents p.sp-words {
	display: none;
	margin-top: 1em;

}
 
@media only screen and (max-width : 640px){
#contents p.pc-image,
#contents p.pc-words {
	display: none;
}
#contents p.sp-image,
#contents p.sp-words {
	display: block;
}
}


ol.sample1{
  counter-reset:list;
  list-style-type:none;
  font: 14px/1.6 'arial narrow', sans-serif;
  padding:0;
}
ol.sample1 li{
  position:relative;
  padding: 0 0 0 30px;
  margin: 7px 0 7px 0px;
  font-weight: bold;
  font-size:14px;
  line-height: 29px;
  border: dashed 1px transparent;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;
}
ol.sample1 li:before{
  counter-increment: list;
  content: counter(list);
  position: absolute;
  left: -10px;
  width: 30px;
  height: 30px;
  text-align: center;
  color: #fff;
  line-height:30px;
  background: #F6A38B;
  border-radius: 50%;
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
ol.sample1 li:hover{
  border-bottom-color: #F6A38B;
}

.maru {
 height:50px;
 width:50px;
 border-radius:50%;
 line-height:50px;
 text-align:center;
}

table {
  margin: 20px auto;
}
.tbl-r02 th {
  background: #e9727e;
  border: solid 1px #ccc;
  color: #fff;
  padding: 10px;
}
.tbl-r02 td {
　border: solid 1px #ccc;
  padding: 10px;
}
 
@media screen and (max-width: 640px) {
  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .tbl-r02 {
    width: 80%;
  }
  .tbl-r02 th,
  .tbl-r02 td {
　　border-bottom: none;
    display: block;
    width: 100%;
  }
}
 
.btn-gradient-radius {
  display: inline-block;
  padding: 7px 5px 10px;
  border-radius: 25px;
  margin:0px 3% 0 3%;
  text-decoration: none;
  color: #FFF;
  background-image: linear-gradient(45deg, #FFC107 0%, #ff8b5f 100%);
  transition: .4s;
}

.btn-gradient-radius:hover {
  background-image: linear-gradient(45deg, #FFC107 0%, #f76a35 100%);
}

