@charset "UTF-8";

/*
======= 00: 共通 =======
*/

html {
    font-size: 1.1em;
}
body{
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", sans-serif;
    line-height: 1.5;
   margin: 0;
   padding: 0;
}
a {
    text-decoration: none;
}
#container {
	width: auto;
	margin-left: auto;
 	margin-right: auto;
 	margin-top:5px;
 	text-align: left;
}
img {
	border: none;
}
.wrapper {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 4%;
    color: #000;
}

h2{
	margin:0px 0px 10px 0px;
}


#copy{
	color: #000000;
	text-align:right;
	font-size: 80%;
}



.pdf {
	border:1px solid #9f9f9f;
	background-color:#eff1f3;
	padding:5px;
	margin-left:205px;
	font-size:70%;
	line-height:130%;
}
#tel-number a {
    color:#000;
    text-decoration:none;
}

#tel-number-w a {
    color:#fff;
    text-decoration:none;
}
/*
======= 01: トップメニュー =======
*/
.menu-top-on {
  position: relative;
  display: inline-block;
  font-weight: normal;
  text-decoration: none;
  border-left: solid 1px #aaa;
  border-right: solid 1px #aaa;
  color: #000000;
  background: #dbe8f1;
  width:200px;
  padding:5px;
  font-size:1.3rem;
  text-decoration:underline solid 1px #000;
}

.menu-top-off {
  position: relative;
  display: inline-block;
  font-weight: normal;
  text-decoration: none;
  border-right: solid 1px #aaa;
  color: #000000;
  background: #ffffff;
  width:200px;
  padding:5px;
  font-size:1.3rem;
}

.menu-top-off::after {
position:absolute;
left:0;
content:"";
width:100%;
height:1px;
background:#000;
bottom: -1px;
transform: scale(0, 1);
transform-origin: center top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
transition: transform 0.3s;   /*変形の時間*/
}

.menu-top-off:hover::after {
transform: scale(0.5, 0.5); /*ホバー後、x軸方向に0.5（相対値）伸長*/
}

.menu-top-off-left {
  position: relative;
  display: inline-block;
  font-weight: normal;
  text-decoration: none;
  border-left: solid 1px #aaa;
  color: #000000;
  background: #ffffff;
  width:200px;
  padding:5px;
  font-size:1.3rem;
}

.menu-top-off-left::after {
position:absolute;
left:0;
content:"";
width:100%;
height:1px;
background:#000;
bottom: -1px;
transform: scale(0, 1);
transform-origin: center top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
transition: transform 0.3s;   /*変形の時間*/
}

.menu-top-off-left:hover::after {
transform: scale(0.5, 0.5); /*ホバー後、x軸方向に0.5（相対値）伸長*/
}


.menu-middle {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  width: 100px;
  height: 80px;

  font-weight: normal;
  padding: 5px;
  text-decoration: none;

  color: #000000;
  background: #ffffff;
  font-size:0.8rem;
  line-height: 1.3;

  border: 1px solid #ccc;
  border-radius: 0px;

  margin: 0px;
}


.menu-middle::after {
position:absolute;
left:0;
content:"";
width:100%;
height:1px;
background:#000;
bottom: -1px;
transform: scale(0, 1);
transform-origin: center top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
transition: transform 0.3s;   /*変形の時間*/
}

.menu-middle:hover::after {
transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
}

img.icon-middle {
  width: 50px;
  height: 50px;
  margin-bottom: 6px;
}

.caution-red {
  position: relative;
  display: inline-block;
  font-weight: bold;
  text-decoration: none;
  border: solid 2px #dc0033;
  color: #dc0033;
  background: #ffffff;
  transition: .4s;
  width:210px;
  padding:10px;
}

.caution-red:hover {
  background: #dc0033;
  color: #fff;
  border: solid 2px #dc0033;
  font-weight: bold;
}

img.icon-banner-in {
width:200px;
height:auto;
}

img.icon-banner-out {
width:200px;
height:auto;
}

/*
======= xx: 確認中 =======
*/


.btn-flat-vertical-border-topl {
  position: relative;
  display: inline-block;
  font-weight: normal;
  text-decoration: none;
  border-bottom: solid 5px transparent;
  color: #000000;
  background: #ffffff;
  width:65px;
  padding:5px;
}

.btn-flat-vertical-border-topl:hover {
  background: #dbe8f1;
  color: #000;
  border-bottom: solid 5px #0d59b6;
  font-weight: normal;
}


.btn-flat-vertical-border-redl {
  position: relative;
  display: inline-block;
  font-weight: bold;
  text-decoration: none;
  border-bottom: solid 2px transparent;
  color: #000000;
  background: #ffffff;
  transition: .4s;
  width:65px;
  padding:5px;
}

.btn-flat-vertical-border-redl:hover {
  background: #dc0033;
  color: #000;
  border-bottom: solid 2px #dc0033;
  font-weight: bold;
}

.wrapper2 {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0% 4%;
    color: #000;
}
.wrapper-m {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0px;
    padding: 0.1% 2%;
    color: #000;
}

/*
======= 03: ヘッダー =======
*/

/*
======= 04: メイン =======
*/
.news-contents {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0px;
}

.outer {
background: #fff;
}

/* 記事部分 */
article {
    width: 74%;
}

/* サイドバー */
aside {
    width: 22%;
}
.sub-menu {
    margin-bottom: 30px;
    list-style: none;
}
.sub-menu li {
    border-bottom: 1px #ddd solid;
}
.sub-menu a {
    color: #432;
    padding: 10px;
    display: block;
}
.sub-menu a:hover {
    color: #0bd;
}

.sub-menu-link {
    margin-bottom: 0px;
    list-style: none;
}
.sub-menu-link li {
    border-bottom: 1px #ddd solid;
}
.sub-menu-link a {
    padding: 10px;
    display: block;
}


aside p {
    padding: 12px 10px;
}

.main-title {
    font-size: 1.375rem;
    padding: 8px 18px;
    border-left: 10px #0d59b6 solid;
    border-bottom: 1px #0d59b6 solid;
    font-weight: bold;
    margin-left:auto;
}

.sub-title {
    font-size: 1.375rem;
    padding: 8px 8px;
    border-bottom: 1px #0d59b6 solid;
    font-weight: normal;
}

.post-title {
    font-size: 1.5rem;
    font-weight: bold;
    padding: 8px 8px;
    border-left: 20px #0d59b6 solid;
    border-bottom: 3px #0d59b6 solid;
    max-width:1000px;
    margin-left:auto;
    margin-right:auto;
}

/*
======= 05: サブ =======
*/


/*
======= 11: フォント =======
*/
.arrow {
    position: relative;
    padding-left: 22px;
    padding-top: 12px;
    padding-bottom: 9px;
    color: #222;
}
.arrow:hover {
	background: #62A1CB;
    color: #fff;
}
.arrow::before {
    position: absolute;
    content: '';
    width: 17px;
    height: 17px;
    background: #697b91;
    border-radius: 50%;
    top: 50%;
    left: 0;
    margin-top: -7px;
}
.arrow::after {
    position: absolute;
    content: '';
    width: 4px;
    height: 4px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 50%;
    left: 5px;
    margin-top: -1px;
}

/*
======= 12: 矢印 =======
*/
a.arrow3{
	position:relative;
	display:inline-block;
	padding:5px 32px 5px 16px;
	color:#fff;
	text-decoration:none;
	height:24px;
	line-height:24px;
	border-radius:2px;
	background: #62A1CB;
}
a.arrow3:before,
a.arrow3:after{
	content:"";
	display:block;
	position:absolute;
}
a.arrow3:before{
	width:20px;
	height:20px;
	background:#fff;
	border-radius:50%;
	right:4px;
	top:7px;
}
a.arrow3:after{
	width:8px;
	height:8px;
	border-right:2px solid #62A1CB;
	border-top:2px solid #62A1CB;
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
	right:10px;
	top:12px;
}

.arrow04 {
    position: relative;
    padding-left: 22px;
}
.arrow04::before {
    position: absolute;
    content: '';
    width: 16px;
    height: 16px;
    background: #697b91;
    border-radius: 50%;
    top: 50%;
    left: 0;
    margin-top: -7px;
}
.arrow04::after {
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    border: solid 4px transparent;
    border-left: solid 6px #fff;
    top: 50%;
    left:6px;
    margin-top: -3px;
}
a.arrow3y{
	position:relative;
	display:inline-block;
	padding:0 32px 0 16px;
	color:#222;
	text-decoration:none;
	height:24px;
	line-height:24px;
	border-radius:2px;
	background: #fed500;
}
a.arrow3y:before,
a.arrow3y:after{
	content:"";
	display:block;
	position:absolute;
}
a.arrow3y:before{
	width:16px;
	height:16px;
	background:#222;
	border-radius:50%;
	right:4px;
	top:4px;
}
a.arrow3y:after{
	width:4px;
	height:4px;
	border-right:2px solid #fed500;
	border-top:2px solid #fed500;
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
	right:10px;
	top:9px;
}

a.arrow3g{
	position:relative;
	display:inline-block;
	padding:0 32px 0 16px;
	color:#222;
	text-decoration:none;
	height:24px;
	line-height:24px;
	border-radius:2px;
	background: #9C3;
}
a.arrow3g:before,
a.arrow3g:after{
	content:"";
	display:block;
	position:absolute;
}
a.arrow3g:before{
	width:16px;
	height:16px;
	background:#222;
	border-radius:50%;
	right:4px;
	top:4px;
}
a.arrow3g:after{
	width:4px;
	height:4px;
	border-right:2px solid #9C3;
	border-top:2px solid #9C3;
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
	right:10px;
	top:9px;
}


/*
======= 2: 住所記載 =======
*/


.address {
	font-size:90%;
	line-height:130%;
	margin-bottom:15px;
	color:#ffffff;
	font-weight:lighter;
}
.tel {
	margin:8px 0px;
	color:#ffffff;
}

/*
======= 3: 見出し類 =======
*/
.common_obi{
	background-color:#dbe8f1;
	font-size:115%;
	padding:3px 15px;
	border:1px solid #9f9f9f;
	margin-bottom:15px;
}
.common_title{
	background-image:url(../images/event/common_title.gif);
	background-repeat:repeat-y;
	padding:0px 15px;
	font-size:150%;
	margin:5px 0px 15px 0px;
	font-weight:bold;
}

/*
======= 4: 表組み =======
*/
.kumi{
	margin:10px 0px;
}

.kumi table{
	border-top:1px solid #9f9f9f;
	border-left:1px solid #9f9f9f;
	background:#ffffff;
	border-spacing:0;
	empty-cells:show;
	border-collapse:collapse;
}
.kumi caption {
	text-align: left;
	margin: 0px;
	padding: 20px 0px 3px;
}
.kumi tr{
	border-right:1px solid #9f9f9f;
	border-bottom:1px solid #9f9f9f;
}
.kumi td{
	border-right:1px solid #9f9f9f;
	border-bottom:1px solid #9f9f9f;
	color:#000;
	padding:3px 5px;
	font-size:95%;
}
.kumi th{
	border-right:1px solid #9f9f9f;
	border-bottom:1px solid #9f9f9f;
	color:#000;
	background-color:#eeeeee;
	padding:3px;
	font-weight:lighter;
}

.kumi2{
	margin:10px 0px;
}

.kumi2 table{
	border-top:1px solid #9f9f9f;
	border-left:1px solid #9f9f9f;
	background:#ffffff;
	border-spacing:0;
	empty-cells:show;
	border-collapse:collapse;
}
.kumi2 tr{
	border-right:1px solid #9f9f9f;
	border-bottom:1px solid #9f9f9f;
}
.kumi2 td{
	border-right:1px solid #9f9f9f;
	border-bottom:1px solid #9f9f9f;
	color:#000;
	padding:3px 5px;
	font-size:90%;
}
.kumi2 th{
	border-right:1px solid #9f9f9f;
	border-bottom:1px solid #9f9f9f;
	color:#000;
	background-color:#f0f0b3;
	padding:3px;
}

.kumi3{
	margin:10px 0px;
}

.kumi3 table{
	border-top:1px solid #9f9f9f;
	border-left:1px solid #9f9f9f;
	background:#ffffff;
	border-spacing:0;
	empty-cells:show;
	border-collapse:collapse;
}
.kumi3 tr{
	border-right:1px solid #9f9f9f;
	border-bottom:1px solid #9f9f9f;
}
.kumi3 td{
	border-right:1px solid #9f9f9f;
	border-bottom:1px solid #9f9f9f;
	color:#000;
	padding:3px 5px;
}
.kumi3 th{
	border-right:1px solid #9f9f9f;
	border-bottom:1px solid #9f9f9f;
	color:#000;
	background-color:#bbcbcf;
	padding:3px;
}

/*
======= 5: フォント =======
*/
.tx_s{
	font-size:100%;
}
.tx_ss{
	font-size:80%;
}
.tx_sss{
	font-size:55%;
	font-weight:lighter;
	padding-left:20px;
}
.time{
	font-size:75%;
}
.tx_b{
	font-size:100%;
	font-weight:normal;
}
.tx_b2{
	font-size:115%;
}
.tx_bb{
	font-size:120%;
	font-weight:normal;
 }
.topcgi{
	margin:0px 15px 25px 15px;
	font-size:100%;
  padding: 0px 0px 0px 3%;
}
.box{
	margin:0px 10px;
}
.fees_titile{
	border-bottom:2px solid #ccd4e7;
	padding-bottom:3px;
}
.kihonryoukin {
	width: 550px;
}
.choukaryoukin {
	width: 430px;
}

/*
======= 6: フッター =======
*/
/* フッター
------------------------------- */
#footer {
  background: #222;
}

#footer .cont {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 15px 0% 15px 15%;
}

#footer .cont-item {
  display: block;
  width: calc(100% / 2);
}

#footer .nav a {
  display: block;
  color: #ccc;
}

#footer .nav .ttl {
  display: block;
  margin: 30px 0 6px;
  font-size: 100%;
  font-weight: bold;
  color: #ccc;
}

#footer .nav .ttl:first-child {
  margin-top: 0;
}

#footer .nav .ttl + .ttl {
  margin-top: 1em;
}

#footer .nav ul {
  display: block;
  font-size: 0.9em;
  line-height: 2;
  padding-left: 0px;
}

#footer .nav li {
  display: block;
  font-size: 1em;
  line-height: 2;
}

#footer .nav li:first-child {
  margin-top: 0;
}

#footer .nav li ul {
  margin: 0 0 0 0em;
}

#footer .nav li li {
  position: relative;
}

#footer .nav li li:before {
  position: absolute;
  top: 50%;
  left: -10px;
  content: "";
  display: block;
  width: 4px;
  height: 1px;
  background-color: #fff;
}



#footer .address {
  display: block;
  margin: 1em 0 0;
  font-size: 0.9rem;
  line-height: 2;
  color: #ccc;
}









