@charset "utf-8";

* {
	margin: 0px;
	padding: 0px;
}

body{
	background-color: #f5f6f7;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	text-justify: inter-ideograph;
	-webkit-text-size-adjust: none;
	color: #666;
	background-image: url(../images/bg.png);

	}

#wrap {
	margin: auto;
	height: auto;
	width: 960px;
}
#contents {
	clear: none;
	float: left;
	height: auto;
	width: 960px;
	background-color: #FFF;
	/*margin-top: 20px;*/
	box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
}
.text {
	clear: none;
	float: left;
	width: 840px;
	margin-top: 50px;
	margin-right: 60px;
	margin-bottom: 0px;
	margin-left: 60px;
}
.text p {
	font-size: 14px;
	line-height: 28px;
	margin-bottom: 5px;
}
.summary {
	clear: none;
	float: left;
	width: 900px;
	margin-top: 30px;
	margin-right: 30px;
	margin-bottom: 20px;
	margin-left: 30px;
	height: auto;
}

.summary p{
	font-size:14px;
	margin-right: 30px;
	margin-left: 30px;
	padding-bottom:40px;
}


.summary dl {
	clear: none;
	float: left;
	height: auto;
	width: 900px;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: #CCC;
	margin-bottom: 20px;
	padding-bottom: 20px;
}
.summary dt {
	width: 180px;
	margin-right: 20px;
	height: auto;
	clear: none;
	float: left;
	font-size: 14px;
	margin-left: 20px;
}
.summary dd {
	width: 660px;
	height: auto;
	float: left;
	clear: none;
	font-size: 14px;
	line-height: 26px;
	margin-right: 20px;
}
.map {
	clear: none;
	float: left;
	height: 300px;
	width: 960px;
	background-color: #CCC;
}
#foot {
	/*font-size: 8px;
	color: #999;
	text-align: center;
	clear: none;
	float: left;
	height: auto;
	width: 960px;
	margin-top: 20px;
	margin-bottom: 20px;*/
	clear: both;
}

h1 {
	clear: none;
	float: left;
	height: auto;
	width: 960px;
	background-color: #add700;
	text-align: center;
	color: #FFF;
	font-size: 24px;

}
h2 {
	font-weight: normal;
	text-align: center;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #f86743;
	font-size: 16px;
	letter-spacing: 0.1em;
	margin-bottom: 30px;
	padding-bottom: 5px;
	color:#666;
}

h3 {
	font-weight: normal;
	text-align: center;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #f86743;
	font-size: 25px;
	letter-spacing: 0.1em;
	margin-bottom: 30px;
	padding-bottom: 5px;
	color:#666;
}

.sp {
	clear: none;
	float: left;
	width: 900px;
	margin-top: 15px;
	margin-right: 30px;
	margin-bottom: 10px;
	margin-left: 30px;
	height: auto;
}

.sp p{
	font-size:12px;
	text-align: center;

}

.sp_img {
	height: auto;
	width: 220px;
}

/*summary LINK*/
.summary a {
	color: #39C; /*リンクの色*/
	text-decoration: none; /*下線無し*/
}

.summary a:visited {
	color: #39C;/*リンクの色*/
}

.summary a:hover {
	color: #39C; /*リンクの色*/
	text-decoration: underline; /*下線あり*/
}

/*font option*/
.t1 {
	color: #39C;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #CCC;
}
/* pc link optiin */

.link {
	clear: none;
	float: left;
	width: 480px;
	text-align: center;
	margin-top: 20px;
	/*margin-right: 130px;
	margin-left: 130px;*/
}


a.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50px;
  position: relative;
  background: #ff0000;
  border: 1px solid #ff0000;
  border-radius: 30px;
  box-sizing: border-box;
  padding: 0 45px 0 25px;
  color: #fff;
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-align: left;
  text-decoration: none;
  transition-duration: 0.3s;
}
a.btn:before {
  content: '';
  width: 8px;
  height: 8px;
  border: 0;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 25px;
  margin-top: -6px;
}
a.btn:hover {
  background: #fff;
  color: #ff0000;
}
a.btn:hover:before {
  border-top: 2px solid #ff0000;
  border-right: 2px solid #ff0000;
}

ruby[data-ruby]
{
    position: relative;
}

ruby[data-ruby]::before
{
    content: attr(data-ruby);
    position: absolute;
    line-height: 100%;
    text-align: center;
    left: -3em;
    right: -3em;
    transform-origin: bottom center;
    /* ルビの文字サイズを親文字に対する比率で指定 */
    transform: scale(0.5);
    /* 100%を越える部分が親文字とルビとのスペースになる。単位は親文字に対する比率 */
    bottom: 105%;
}

ruby[data-ruby] rt
{
    display: none;
}

.box {
	clear: none;
	float: left;
	width: 760px;
}
.box1 {
	text-align: left;
	float: left;
	width: 350px;
}
.box2 {
	text-align: right;
	float: left;
}