@charset "utf-8";
/* CSS Document */


/*-- ↓PC版表示CSS↓  --*/
.pc_area{
  display:block;
}
.sp_area{
  display:none;
}


.pc_br{
    display: inline-block;
  }

.sp_br{
    display: none;
  }
/*-- ↑PC版表示CSS↑  --*/


/*------------------------------------------------------------
	sp　トップページスライダー
------------------------------------------------------------*/
/*------------------------------------------------------------
	sp　スライダー拡大表示
------------------------------------------------------------*/
    

.hero{
    position: relative;
    margin: 70px 0 0 0;
}
.hero img {
    width: 100%;
    display: block;
    margin:auto;
}

/* slide */

.slide {
  position: relative;
  margin: 0;
  padding: 0;
}
.slide .item {
  position: relative;
  height: 100%;
}
.slide .item::before {
  display: block;
  padding-top: 0%;
  content: "";
}
.slide .item .image {
  position: relative;
  overflow: hidden;
}
.slide .item img {
    width: 100%;
    display: block;
    margin:auto;
}
.slide > .slick-list,
.slide > .slick-list > .slick-track,
.slide > .slick-list > .slick-track > .slick-slide > div {
  position: relative;
  height: 100%;
}
/* ズーム解除の場合はコメントアウト
.slide-animation{
    animation: fadezoom 15s 0s forwards;
}
     
    
@keyframes fadezoom {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.12);
  }

 }
*/

/*------------------------------------------------------------
	clearfix
------------------------------------------------------------*/
/*.clearfix {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}
*/

.clearfix:after {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}

/*------------------------------------------------------------
	PC　コンテンツ pc_inn
------------------------------------------------------------*/

.pc_inn:after {
    content: "";
    display: table;
    clear: both;
}


/*=====================================================
	共通CSS設定  (ＮＯ1b)
=====================================================*/

.opacity a img {
    -webkit-transition: opacity 0.5s ease-out;
    transition: opacity 0.5s ease-out;
    background-color: undefined;
}

.opacity a:hover img {
  opacity: 0.5;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

/*=====================================================
	共通CSS設定 
=====================================================*/
html {
  font-size: 6.3%;
  overflow-y: scroll;

}

body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  font-weight: normal;
  font-size: 14rem;
  vertical-align: baseline;
  color: #444;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}

body {
  -webkit-text-size-adjust: none;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}

input,
textarea {
  margin: 0;
  padding: 0;
  line-height: 1.4;
}


input[type="button"],
input[type="submit"] {
  -webkit-appearance: none;
}

ol,
ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption,
th {
  text-align: left;
}

a {
  color: #422b26;
  text-decoration: none;
}

a:focus {
  outline: none;
}

a.anchor{
    display: block;
    padding-top: 120px;
    margin-top: -120px;
}

/*------------------------------------------------------------
	スマホ　コンテンツ背景
------------------------------------------------------------*/
.bg_eedca0 {
    background: rgba(238, 220, 160, 0.2); 
    padding: 0px;
    margin: 0px;
}

.bg_b8e6b8 {
    background: rgba(184, 230, 184, 0.1);
    padding: 0px;
    margin: 0px;
}

.bg_0d5dd2 {
    background: rgba(13, 93, 210, 0.06);
    padding: 0px;
    margin: 0px;
}

.bg_001e0a {
    background: rgba(0, 30, 10, 0.06);
    padding: 0px;
    margin: 0px;
}







/*=====================================================
	header設定
=====================================================*/

.normal .header_box_bar {
    position: fixed;
    z-index: 99;
    left: 0;
    top: 0;
    width: 100%;
    height: 60px;
  margin: 0px;
  padding: 10px 0px 5px 5px;
  border-bottom: 2px solid rgba(13, 93, 210, 0.7);
  background: rgba(255,255,255,1);
}

.normal .header_box_bar:after {
  content: "";
  display: block;
  clear: both;
}

.normal .header_box_bar .header_box_logo {
  float: left;
  width: 40%;
  max-width: 180px;
}

.normal .header_box_bar .header_box_logo img {
width: 100%;
}

.normal .header_box_bar ul.header_box_menu {
  float: right;
  display: table;
  margin: 3px 68px 0 0;
}



.normal .header_box_bar ul.header_box_menu li {
  float: left;
  margin: 0px 10px 0 0;
  border-left: 1px solid #e3ded5;
  padding: 0px 0px 0px 10px;
  display: table-cell;
}
.header_box_menu img {
    width: 100%;
    max-width: 45px;
}

.normal .header_box_bar ul.header_box_menu li:last-child {
  padding: 0 0 0 10px;
}




/*=====================================================
	content_box設定
=====================================================*/

.content_box {
  position: relative;
}

.main_box {
  position: relative;
}


.main_box img {
  width: 100%;
}



.toppage_top_title {
    font-size: 4.6vw;
    font-weight: bold;
    text-align: center;
    margin: 0px;
    padding: 10px;
    
}



.toppage_top_title_02{
    width: 86%;
    font-size: 3.5vw;
    color: #444;
    text-align: justify;
    margin: 0px auto;
    padding: 0px 10px 10px 10px;
    line-height: 1.4;
}

.toppage_title{
    width: 60%;
    margin: 0px auto;
    padding: 10px;
}

/*------------------------------------------------------------
	スマホ　共通　サブボックス　90～100
------------------------------------------------------------*/
.sub_box {
  margin: 0px auto;
    width: 100%
}

.sub_box_90 {
  margin: 0px auto;
    width: 90%
}

.sub_box_92 {
  margin: 0px auto;
    width: 92%
}

.sub_box_94 {
  margin: 0px auto;
    width: 94%
}

.sub_box_96 {
  margin: 0px auto;
    width: 96%
}




/*------------------------------------------------------------
	スマホトップページ施設内容　サブページトップ共通
------------------------------------------------------------*/
.service_top_content_box01{
    position: relative;
    float:left;
    width: 100%;
    border: 0px solid #cccccc;
    margin: 0px 0 0px 0;
}


.linkbox_service_top {
    position: relative;
    width: 85%;
    float: left;
    margin: 10px 20px 10px 20px;
    background: url("../img/icon/side_arrow.png") no-repeat;
    background-position: right 5% bottom 50%;
    background-size: 30px;
    padding: 10px;
    border: 2px solid #0d5dd2;
    border-radius : 2px;
}

.linkbox_service_top a {
    position: absolute;
    top: 0;
    left: 0;
    height:100%;
    width: 100%;
}

.linkbox_service_top:hover img {
  opacity: 1;
  -webkit-animation: flash 0.1s;
  animation: flash 0.1s;
}

.linkbox_service_top_right_col_name { 
    padding: 0 0 5px 3px;
    margin: 5px 0 0px 0;
    text-align: left;
    font-size: 5vw;
    letter-spacing: 0.8px;
    color: #0d5dd2;
    font-weight: bold;
    background: url("../img/icon/dot_line_01.png") repeat-x 0 bottom;
    background-size: auto auto;
}

.linkbox_service_top_left_col {
	width: 40%;
    max-width: 200px;
    height: 100%;
    position: relative;
    margin: 10px 0 0 3px;
    padding: 0px;
	float: left;
}

.linkbox_service_top_left_col img {
    width: 100%;
    border-radius : 3px;

}


.linkbox_service_top_right_col {
    margin: 10px 5px 0px 15px;
    padding: 0px;
    width: 45%;
	float: left;

}


.linkbox_service_top_right_col p {
    padding: 0px;
    font-size: 4vw;
    line-height: 1.3;
    letter-spacing: 0.02em;
    color: #333;
}



@-webkit-keyframes flash {
  0% {
    opacity: .4;
  }
  100% {
    opacity: 1;
  }
}
@keyframes flash {
  0% {
    opacity: .4;
  }
  100% {
    opacity: 1;
  }
}


/*------------------------------------------------------------
	共通タイトル
------------------------------------------------------------*/
.toppage_title_box {
  margin: 20px auto 15px auto;            /* サンプル用 中央寄せ  */
  box-sizing    : border-box;           /* 罫線も含む長さ       */
  width         : 100%;                 /* BOXの幅              */
  padding       : 12px 12px 20px;                 /* 文字の位置合わせ     */
  text-align    : center;               /* 文字位置             */
}


.subpage_content_txt {
    font-size: 4.6vw;
    font-weight: bold;
    text-align: center;
    margin: 0px;
    padding: 10px;
    
}

.subpage_content_txt_02 { 
    width: 88%;
    padding: 0 0 10px 0;
    margin: 20px auto 10px auto;
    text-align: left;
    font-size: 5vw;
    font-weight: bold;
    background: url("../img/dot_line_01.png") repeat-x 0 bottom;
    background-size: auto auto;
}


.subpage_content_txt_03{
    width: 88%;
    font-size: 3.5vw;
    color: #444;
    text-align: justify;
    margin: 0px auto;
    padding: 0px 10px 10px 10px;
    line-height: 1.4;
}


.subpage_content_txt_04 {
    width: 88%;
    font-size: 4vw;
    font-weight: bold;
    text-align: justify;
    margin: 0px auto;
    padding: 10px;
    
}




.main_title{
    display: inline-block;
    color: #0d5dd2;
    font-size: 6vw;
    font-weight: bold;
    text-align: center;
    padding: 2px;
    margin: 0 auto 0px auto;
    border-bottom: 3px solid #0d5dd2;
    line-height: 1.5em;
    
}

.main_title .fa {
    color: #0d5dd2;
}



.main_box_text {
  font-size: 3vw;
  margin-top: 1px;
  text-align: center;
}






.sub_box_maintitle {
  padding: 5px 10px 5px 5px;
  font-size: 16rem;
  font-weight: bold;
  border-top: 2px dotted #2f1913;
  border-bottom: 2px dotted #2f1913;
  margin-bottom: 2px;
}

.sub_box_maintitle_02 {
    width: 90%;
  padding: 5px 10px 5px 10px;
  font-size: 6vw;
  font-weight: bold;
  border-top: 0px dotted #0d5dd2;
  border-bottom: 2px dotted #0d5dd2;
  margin: 0 auto 2px auto;
    color: #0d5dd2;
}

.sub_box_maintitle_02 .fa{
    color: #0d5dd2;
}

.sp_subpage_txt_box_title_main {
    width: 95%;
    font-size: 150%;
    margin: 10px auto 0px auto;
    padding: 5px 0px 5px 10px;
  color: #444;
  text-shadow: 0 0 5px white;
  background: -webkit-repeating-linear-gradient(-45deg, #f6f6f6, #f6f6f6 3px,#f6f6f6 3px, #ffffff 7px);
  background: repeating-linear-gradient(-45deg, #f6f6f6, #f6f6f6 3px,#ffffff 3px, #ffffff 7px);
}



.sp_subpage_txt_box_title { 
    width: 92%;
    padding: 0 0 10px 0;
    margin: 20px auto 10px auto;
    text-align: left;
    font-size: 5vw;
    font-weight: bold;
    background: url("../img/icon/dot_line_01.png") repeat-x 0 bottom;
    background-size: auto auto;
}

.sp_subpage_txt_box_title_02 {
    width: 90%;
    color: #444;
    background: #f4f4f4;
    line-height: 100%;
    margin: 10px auto 0px auto;
    padding: 0.6em 0.5em;
    font-size: 5vw;
    border-left: 5px solid #0d5dd2;
    border-bottom: solid 3px #d7d7d7;
    }

.sp_subpage_txt_box_title_03 {
  padding: .25em 0 .25em .15em;
  border-bottom: 5px solid #0d5dd2;
　margin: 20px 0 10px 10px;
  font-size: 100%;
}


.fa{
    margin: 0px 4px 0px 0px;
    font-size: 100%;
}


.sub_title01{
	background:#f4f4f4;
	color:#2f1913;
	padding:4px 0 3px 10px;
	margin:0 0 3% 0;
	font-size:1.0em;
    margin-top: 5px;
}

.sub_title02{
	background:#f4f4f4;
	color:#2f1913;
	padding:4px 0 3px 10px;
	margin:0 0 3% 0;
	font-size:1.0em;
    margin-top: 5px;
}
.sub_title02 a {
    text-decoration: underline;
    font-size: 120%;
}


/*------------------------------------------------------------
	サブページコンテンツボックス
------------------------------------------------------------*/


.sub_box_content:after {
  content: "";
  display: block;
  clear: both;
}

.sub_box_content li {
  float: left;
  margin-bottom: 15px;
  line-height: 1.4;
}

.sub_box_content li .sub_box_img {
  width: 95%;
    margin-left: 5px;
}

.sub_box_content li .sub_box_img02 {
  width: 98%;
    margin-left: 5px;
}

.sub_box_content li .sub_box_img_border {
  width: 95%;
    margin-left: 5px;
    border: 1px solid #ccc;
}

.image_txt {
    text-align: center;
    margin: 0px;
    padding: 0px;
    font-size: 100%;
}


.sub_box_content li .sub_box_text {
  font-size: 12rem;
  margin-top: 2px;
  text-align: center;
}

.sub_box_content li:nth-child(odd) {
  padding: 2% 2% 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 51%;
}

.sub_box_content li:nth-child(even) {
  padding: 2% 0 0 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 49%;
}


.sub_box_content02 li {
  border-bottom: 1px solid #d1c7b1;
  line-height: 1.4;
}

.sub_box_content02 li a {
  width: 100%;
  padding: 10px 30px 10px 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  position: relative;
}

.sub_box_content02 li a:after {
  content: "";
  display: block;
  clear: both;
}

.sub_box_content02 li a :after {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  border-top: 5px solid #422b26;
  border-right: 5px solid #422b26;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -7px;
}

.sub_box_content02 li a img.sub_box_content02_img {
  float: left;
  width: 30%;
  margin-right: 10px;
}

.sub_box_content02 li a dl.sub_box_content02_text {
  text-align: left;
}

.sub_box_content02 li a dl.sub_box_content02_text dt {
  font-size: 18rem;
  font-weight: bold;
}

.sub_box_content02 li a dl.sub_box_content02_text dd {
  margin-top: 10px;
  font-size: 12rem;
}

.sub_box_content li.sub_box_content03 {
  width: 100%;
  padding: 1% 0 0 0;
  position: relative;
}




/*------------------------------------------------------------
	SPトップページ　ピックアップ
------------------------------------------------------------*/

/* 団体紹介動画（youtube埋め込み） */
.service_image_box{
    width: 95%;
    margin: 0px auto 0px auto;
    content: "";
    display: table;
}

.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%;
}

.pick_up_box{
    width: 95%;
    height: 100%;
    margin: 10px auto 0px 10px;
}

.pick_up_box p.title{
    margin: 0px 0px 6px 0px; 
    font-weight: bold;
    
}


.pick_up_box p{
    margin: 0px 0px 6px 10px; 
    
}

.pick_up_link {    
	width: 100%;
    margin: 0px auto;
    padding: 20px 0px 0px 0px;
}

.pick_up_link a.button {
    width: 94%;
    margin: 0px;
    padding: 10px;
    display: block;
    text-decoration: none;
    color: #333;
    background-color: #fff;
    font-size: 18px;
    line-height: 18px;
    text-align: center;
    border: 1px solid #aaa;
}

.pick_up_link a:hover.button {
    text-decoration: underline;
    color: #fff;
    background: rgba(13, 93, 210, 0.8);
    opacity: 1;
    -webkit-animation: flash 0.6s;
    animation: flash 0.6s;
}



/*------------------------------------------------------------
	sp　スリック　画像スライダー
------------------------------------------------------------*/
.pickup_slick{
    width: 95%;
    margin: 0px 5px;
    padding: 0px;
  }


.pickup_image {
    position:relative;
    width: 100%;
    margin: 0px 10px;
    padding: 0px;
    outline:none;
}

.pickup_image img {
    width: 100%;
    margin: 0px 10px;
    
}

.pickup_image span{
    position:absolute;
    bottom:0px;
    left:0px;
    width: 100%;
    margin: 0px 10px;
    text-align:center;
    color:#fff;
    line-height: 1.8;
    background-color:#000;
    filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
}

.pickup_image .fa {
    color:#fff;
}

.pickup_image:hover img {
  opacity: 1;
  -webkit-animation: flash 0.1s;
  animation: flash 0.1s;
}

@-webkit-keyframes flash {
  0% {
    opacity: .4;
  }
  100% {
    opacity: 1;
  }
}
@keyframes flash {
  0% {
    opacity: .4;
  }
  100% {
    opacity: 1;
  }
}

/*リンク要素基本部分*/
.btn_readmore {    
    margin: 0px auto 0px;
    width: 90%;
    outline:none;
    text-align: center;
}

/*hoverアクション（サイドスライドカット+フラッシュ）*/
.btn-open {
    display: inline-block;
    width: 95%;
    margin: 0px auto;
    padding: 12px 0;
    font-size: 4.5vw;
    font-weight: bold;
    line-height: 1.4;
    color: #fff;
    text-align: center;
    text-decoration: none;
    background-color: rgba(13, 93, 210, 0.8);
    border: 0px solid #aaa;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.btn-open:after{
  width: 100%;
  height: 0;
  content:"";
  position: absolute;
  top: 50%;
  left: 50%;
  background : #FFF;
  opacity: 0;
  transform: translateX(-50%) translateY(-50%) rotate(25deg);
  transition: .2s;
  z-index: -1;
}

.btn-open:hover{
  color: #0d5dd2;
}

.btn-open:hover:after{
  height: 240%;
  opacity: 1;
}
.btn-open:active:after{
  height: 340%;
  opacity: 1;
}

.btn-open .fa {
    color:#fff;
}

.btn_readmore a.btn-open:hover .fa{
    color: #0d5dd2;
}


/*hoverアクション（ノーマルカラー反転+フラッシュ）*/
.btn_readmore a.button {
    display: block;   
    width: 90%;
    margin: 0px auto;
    padding: 15px 0;
    font-size: 4.5vw;
    font-weight: bold;
    line-height: 1.4;
    color: #fff;
    text-align: center;
    text-decoration: none;
    background-color: rgba(13, 93, 210, 0.9);
    border: 0px solid #aaa;
}

.btn_readmore a.button:hover {
    text-decoration: none;
    color: #0d5dd2;
    background: rgba(13, 93, 210, 0.1);
    opacity: 1;
    -webkit-animation: flash 0.2s;
    animation: flash 0.2s;
}

.btn_readmore .fa {
    color:#fff;
}

.btn_readmore a.button:hover .fa{
    color: #0d5dd2;
}



/*------------------------------------------------------------
	スマホ　サブページ
------------------------------------------------------------*/
/*------------------------------------------------------------
	サブページタイトルイメージ
------------------------------------------------------------*/


.sp_subpage_title_image_all {
  background: url("../img/title/news_main01_sp_800.jpg") center;
  background-size: cover;
  width: 100%;
    /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
    /* 例:幅800px高さ310pxの画像の場合 */
    padding-top: 38.75%;
  position: relative;
  margin: 75px auto 0;
  top: 0;
  left: 0;
}

.sp_mainimage_text {
  background: rgba(0, 0, 0, 0);
  position: absolute;
  top: 25%;
  left: 5%;
  width: 50%;
  line-height: 1.5em;
  text-align: left;
    font-size: 7vw;
    letter-spacing: 0.2em;
    font-weight: bold;
	padding: 20px;/* ライフロード改造値 */
	color: #333;/* 絶対位置指定 */
    text-shadow: 0 0 6px #f2f2f2,0 0 6px #f2f2f2,0 0 6px #f2f2f2,0 0 6px #f2f2f2,0 0 6px #f2f2f2,0 0 6px #f2f2f2,0 0 6px #f2f2f2,0 0 6px #f2f2f2,0 0 6px #f2f2f2,0 0 6px #f2f2f2,0 0 6px #f2f2f2,0 0 6px #f2f2f2,0 0 6px #f2f2f2,0 0 6px #f2f2f2,0 0 6px #f2f2f2,0 0 6px #f2f2f2;
}


/* ==========================================================================
　　スマホ　サブページ-案内 レスポンシブ　カラム設計
========================================================================== */

/*▼nav 丸ボタンメニュー▼ */
.col_3{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_3 > .col_cont{
    box-sizing: border-box;
	width: 33.33333%;
	padding: 0px 2px;
}
@media screen and (max-width: 300px) {
	.col_3 > .col_cont{
		width: 50%;
	}
}
@media screen and (max-width: 240px) {
	.col_3 > .col_cont{
		width: 100%;
	}
}

.servicelink { 
    width: 90px;
    height: 90px;
    line-height: 90px;
    max-width: 100%;
    background: rgba(0,30,10,0.9);
    border-radius: 50%;
    display: block;
    text-align:center;
    vertical-align: middle;
    position: relative;
    margin: 10px auto;
}


.servicelink span.on_hover{
    position:absolute;
    padding-top: 25px;
    left: 42%;
}


.servicelink a{
    display:block;
    color:#fff;
    color: rgba(255,255,255,1);
    font-size: 28px;
}
.servicelink a:hover{
  cursor: pointer;
  transform:scale(0.92,0.92);
  transition:0.7s all;
}

.servicelink a:hover,
.servicelink a:focus,
.servicelink a:active{
    color:#fff;
    text-decoration: none;
}

.servicelink span.on_hover .fa{
    font-size: 18px;
    color: rgba(255,255,255,0.9);
}

/* 通常時はホバー時の文字を非表示にする（※スマホ版は常時表示の為コメントアウト） */　
.servicelink a .on_hover{
/*display: none;*/
}

/* ホバー時に、ホバー時の文字を表示する */
.servicelink a:hover .on_hover{
    display: inline;
}


/* 紹介画像 */
.pic_box_1col {
    width: 95%;
    display: block;
    margin: 10px auto;
    padding: 0px;
    border: 0px solid #cccccc;
}

.pic_box_1col img {
    width:100%;
}

/*画像ボーダーあり（白背景用）*/
.pic_box_1col_border {
    width: 95%;
    display: block;
    margin: 0 auto;
    padding: 0px;
    border: 2px solid #cccccc;
}

.pic_box_1col_border img {
    width:100%;
}




@media screen and (min-width: 500px) {
.servicelink { 
    width: 150px;
    height: 150px;
    line-height: 150px;
    max-width: 100%;
    background: rgba(0,30,10,0.9);
    border-radius: 50%;
    display: block;
    text-align:center;
    vertical-align: middle;
    position: relative;
    margin: 10px auto;
}
.servicelink span.on_hover{
    position:absolute;
    padding-top: 28px;
    left: 44%;
}
.servicelink span.on_hover .fa{
    font-size: 20px;
}
    
}





/*------------------------------------------------------------
	スマホ　タブ切り替え部分
------------------------------------------------------------*/

/*タブ切り替え全体のスタイル*/




/*------------------------------------------------------------
	スマホ　施設概要（サイズ-レスポンシブ）
------------------------------------------------------------*/
.tbl-r02 {
  margin: 15px;
}
.tbl-r02 th {
  background: #f0f0f0;
  border: solid 1px #ccc;
  color: #333333;
  padding: 10px;
  font-size: 4vw;
}
.tbl-r02 td {
  background: #fff;
　border: solid 1px #ccc;
  padding: 12px 10px 35px 10px;
  font-size: 3.5vw;

}
.tbl-r02 a {
    text-decoration: underline;
    
}



.mapbox{
    margin:0px;
    width: 100%;
}
.mapbox img{
    width:  40%;
    padding: 7px 0;
    max-width: 120px;
}

  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .tbl-r02 {
    width: 85%;
  }
  .tbl-r02 th,
  .tbl-r02 td {
　　border-bottom: none;
    display: block;
    width: 100%;
  }


/*------------------------------------------------------------
	スマホ　区長挨拶
------------------------------------------------------------*/

.mayor_all_box {
    width: 100%;
    margin: 0 auto;
    padding: 0px;
}


.mayor_all_box img {
    background: rgba(255,255,255,0.0);
    width: 100%;
    max-width: 240px;
    margin: 0px auto 10px auto;
    padding: 0px;
    border: 0px solid #ccc;
}

.mayor_txt_box {
    padding: 0px 0px 50px 20px;
    margin: 30px 30px 20px 0;
    width: 90%;
}


.mayor_all_box p {
    line-height: 1.5;
    color: #444;
    font-size: 4vw;
}

.mayor_all_box p.big {
    font-size: 5vw;
    font-weight: bold;
}
.mayor_all_box p.name {
    font-size: 5vw;
    font-weight: bold;
    text-align: right;
    margin: 50px 0px 0px 0;
}


/* ==========================================================================
スマホ　グーグルマップ（サイズレスポンシブ）
========================================================================== */
.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: auto;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 60%;
}

.map_text {
    margin: 0 0 0 20px;;
    float: left;
    text-align: left;
}


/* ==========================================================================
スマホ　サイトマップ
========================================================================== */

.sitemap_box {
    width: 100%;
    margin: 0px auto;
}



.sitemap-parts {
    width: 100%;
    margin: 20px 0px 0px 0px;
	border: 0px solid #666;
	text-align: left;
	border-radius: 0px;
	overflow: hidden;

}



.sitemap-parts-title {
	color: #fff;
	background: #eee;
    margin: 0 0 10px 0;
	padding: 0px;
	font-weight: bold;
}


.sitemap-parts ul {
	list-style: none;
	padding: 0;
	margin: 0;

}
.sitemap-parts ul li {
	padding: 18px;
	margin: 0;
    position: relative;
    border-left: 4px solid #0d5dd2;
    border-top: 1px solid #666;
    border-bottom: 1px solid #666;
    border-right: 1px solid #666;
}

.sitemap-parts ul li a {
	color: #444;
	font-weight: bold;
	text-decoration: none;
	display: block;
	padding: 0;
	border-bottom: 0px dotted #666;
    font-size: 5vw;
}
.sitemap-parts ul li:last-child a {
	border: none;
}

.sitemap-parts ul li a:hover {
    background: rgba(95, 107, 175, 0.2);
    opacity: 1;
    -webkit-animation: flash 0.2s;
    animation: flash 0.2s;
    text-decoration: underline;
}

.sitemap-arrow {
    background-image: url("../img/side_arrow.png");
    background-size: 14px 20px;
    background-repeat: no-repeat;
    background-position: 0 0;
    position: absolute;
    width: 14px;
    height: 20px;
    top: 35%;
    right: 25px;
} 

/*------------------------------------------------------------
	スマホ　パンクズリスト
------------------------------------------------------------*/

.pankuzu_box {
    width: 100%;
    margin: 0 auto;
}


.pankuzu_list *, .pankuzu_list *:after, .pankuzu_list *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.pankuzu_list {
	margin: 10px auto ;
	padding: 12px 0px 12px 5px ;
}

.pankuzu_list a {
	text-decoration: underline;
	color: #444;
    font-size: 120%;
}

.pankuzu_list a:hover,
.pankuzu_list a:focus,
.pankuzu_list a:active {
    text-decoration:none;
}

.pankuzu_list .pankuzu_ul {
	padding-left: 10px;
	margin-top: 0;
	margin-bottom: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
}
.pankuzu_list li {
	display: inline-block;
	position: relative;
	padding-right: calc(16px + 8px);
	margin-right: 8px;
	color: #444;
}
.pankuzu_list li::before {
	content: '›';
	width: 1em;
	height: 1em;
	line-height: 1;
	text-align: center;
	font-size: 200%;
	color: inherit;
	position: absolute;
	top: 40%;
	left: 75%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}
.pankuzu_list li:last-child {
	margin-right: 0;
	padding-right: 0;
	color: #444;
    text-decoration: none;
    font-size: 120%;

}
.pankuzu_list li:last-child::before {
	content: normal;

}
.pankuzu_home a {
    padding-left: 2px
}




/*------------------------------------------------------------
	スマホ　横並びリンクボックス
------------------------------------------------------------*/
.p-useful {
    border: 1px solid #b6b6b6;
    text-align: center;
    width: 95%;
    margin: auto;
}


.p-useful_item:nth-child(3n+2) {
    border-right: 1px solid #b6b6b6;
    border-left: 1px solid #b6b6b6;
}


.p-useful_item {
    float: left;
    width: 33.33333%;
    border-top: 0px solid #b6b6b6;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.p-useful_item img {
    float: left;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}


/*------------------------------------------------------------
	スマホ　お問い合わせボックス
------------------------------------------------------------*/


.subpage_otoiawase_tel_box{
    width: 95%;
    height: auto;
    margin: 0px auto;
    padding: 0px 0 10px 0;
    border-radius : 1px;
    background: rgba(194, 194, 194, 0.2);
    text-align: center;
}

.subpage_otoiawase_sub_title {
  background: #0d5dd2;
  margin: 0px;
  padding: 10px;
  color: #fff;/*文字色*/
  font-size: 4.5vw;
 line-height: auto;
  font-weight: 600;
  text-align: center;
}

.subpage_otoiawase_sub_title .fa {
  color: #fff;  
}

p.otoiawase_txt_sub{
    margin: 20px 5px 0px 5px; 
}




/*=====================================================
	テキストリンク設定
=====================================================*/
/*=====================================================
	インフォメーションリンク設定
=====================================================*/

.content_box .textlink_box {
  width: 100%;
  margin: 10px auto 0;
  border-top: 0px solid #0d5dd2;
  border-bottom: 1px solid #0d5dd2;
}

.content_box .textlink_box .textlink_box_title {
  padding: 5px 10px 5px 10px;
  font-size: 5vw;
  font-weight: bold;
  border-bottom: 2px solid #0d5dd2;
}

.content_box .textlink_box .textlink_box_menu:after {
  content: "";
  display: block;
  clear: both;
}

.content_box .textlink_box .textlink_box_menu li {
  float: left;
  width: 50%;
  border-bottom: 1px solid #0d5dd2;
  padding: 5px 0 5px 5px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 2.2;
}

.content_box .textlink_box .textlink_box_menu li a {
  display: block;
  padding: 8px 0 8px 25px;
}

.content_box .textlink_box .textlink_box_menu li:nth-child(odd) a {
  border-right: 1px dotted #0d5dd2;
}


.content_box .textlink_box .textlink_box_title {
  -webkit-background-size: 22px 22px;
  background-size: 22px 22px;
}


.content_box .textlink_box.information .textlink_box_title {
  -webkit-background-size: 22px 22px;
  background-size: 22px 22px;
}

.content_box .textlink_box.information .textlink_box_menu {
  background-color: #fff;
}

.content_box .textlink_box.information .textlink_box_menu a {
  color: #444444;
  position: relative;
}

.content_box .textlink_box.information .textlink_box_menu a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 5px;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  border-top: solid 3px #0d5dd2;
  border-right: solid 3px #0d5dd2;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}


/*=====================================================
	コピーライト設定
=====================================================*/

.content_box .copyLight {
  margin: 35px 0 30px 0;
  text-align: center;
}

.content_box .copyLight p {
  font-size: 12rem;
}

.content_box .copyLight p:not(:last-child) {
  margin-bottom: 5px;
}



/*------------------------------------------------------------
	その他コード  pc/スマホ　ボタン切り替え
------------------------------------------------------------*/

/* 表示切替ボタンPC版に切り替える */
@media screen and (min-width:1280px) { 
#pc_site_topbtn{
    position: fixed;
    top: 0%;
    left: 20%;
    width:50%;
    z-index: 999;
}
#pc_site_topbtn a{
    display:block;
    background:#e8e8e8;
    background:-webkit-gradient(linear,left top, left bottom,from(#dfdfdf),color-stop(0.03, #fff),color-stop(0.45, #fff),color-stop(0.52, #e7e7e7),to(#fefefe));
    background:-moz-linear-gradient(top,#dfdfdf 0%,#fff 3%,#fff 45%,#e7e7e7 52%,#fefefe 100%);
    color:#444;
    font-size:34px;
    font-weight:bold;
    text-align:center;
    border:1px solid #959595;
    border-radius:4px;
    margin:5px auto;
    padding: 5px;
}

#pc_site_topbtn a:hover{
    opacity: 0.9;
}
    

}

@media screen and ( max-width: 1279px ) {
#pc_site_topbtn{
    display: none;
}
    
}


/* 表示切替ボタンPC版に切り替える */
.content_box .copyLight
.pcSite{
    margin:15px auto;
    width:80%;
    padding:3px 0;
    text-align:center;
}

.btn{
    display:block;
    margin-left:3px;
    border:1px solid #959595;
    background:#e8e8e8;
    background:-webkit-gradient(linear,left top, left bottom,from(#dfdfdf),color-stop(0.03, #fff),color-stop(0.45, #fff),color-stop(0.52, #e7e7e7),to(#fefefe));
    background:-moz-linear-gradient(top,#dfdfdf 0%,#fff 3%,#fff 45%,#e7e7e7 52%,#fefefe 100%);
    color:#333;
    font-size:16px;
    font-weight:bold;
    text-align:center;
    border-radius:4px;
}



/*=====================================================
	ページトップ設定
=====================================================*/


.content_box .pagetop {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
}


.content_box .pagetop a {
  display: block;
  height: 45px;
  background-color: #000;
  border-top: 3px solid #E3DDD1;
  text-indent: -9999px;
  position: relative;
}

.content_box .pagetop a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 50%;
  width: 12px;
  height: 12px;
  margin-right: -5px;
  margin-top: -2.5px;
  border-top: solid 4px white;
  border-right: solid 4px white;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/*------------------------------------------------------------
	アンダーライン
------------------------------------------------------------*/

hr {
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em atuo;
    padding:0;
}

hr.sp_subpage_0d5dd2 {
    width: 94%;
    display:block;
    height:1px;
    border:0;   
    border-top:5px solid #0d5dd2;
    margin: 20px auto 
}



/*------------------------------------------------------------
	スペースタグ
------------------------------------------------------------*/
.space_0px {
    width: auto;
    margin: 0px auto 0px auto;
    text-align: center;
}

.space_5px {
    width: auto;
    margin: 5px auto 0px auto;
    text-align: center;
}

.space_7px {
    width: auto;
    margin: 7px auto 0px auto;
    text-align: center;
}

.space_10px {
    width: auto;
    margin: 10px auto 0px auto;
    text-align: center;
}

.space_15px {
    width: auto;
    margin: 15px auto 0px auto;
    text-align: center;
}

.space_20px {
    width: auto;
    margin: 20px auto 0px auto;
    text-align: center;
}

.space_25px {
    width: auto;
    margin: 25px auto 0px auto;
    text-align: center;
}

.space_30px {
    width: auto;
    margin: 30px auto 0px auto;
    text-align: center;
}

.space_35px {
    width: auto;
    margin: 35px auto 0px auto;
    text-align: center;
}

.space_40px {
    width: auto;
    margin: 40px auto 0px auto;
    text-align: center;
}

.space_50px {
    width: auto;
    margin: 50px auto 0px auto;
    text-align: center;
}

.space_60px {
    width: auto;
    margin: 60px auto 0px auto;
    text-align: center;
}
.space_70px {
    width: auto;
    margin: 70px auto 0px auto;
    text-align: center;
}
.space_80px {
    width: auto;
    margin: 80px auto 0px auto;
    text-align: center;
}
.space_90px {
    width: auto;
    margin: 90px auto 0px auto;
    text-align: center;
}
.space_100px {
    width: auto;
    margin: 100px auto 0px auto;
    text-align: center;
}

.space_120px {
    width: auto;
    margin: 120px auto 0px auto;
    text-align: center;
}

.space_150px {
    width: auto;
    margin: 150px auto 0px auto;
    text-align: center;
}

.space_200px {
    width: auto;
    margin: 200px auto 0px auto;
    text-align: center;
}





/*------------------------------------------------------------
	下記　メディアクエリ　設定
------------------------------------------------------------*/

@media screen and (max-width: 1120px) {
/*-- ↓スマホ版表示CSS↓  --*/
    .pc_area{
    display:none;
  }
    .sp_area{
    display:block;
        
        
  }
    
    .pc_br{
    display: none;
  }
    .sp_br {
        display: inline-block;
    }
/*-- ↑スマホ版表示CSS↑  --*/
    
}

@media screen and (max-width: 991px) {
.ggmap iframe,
.ggmap object,
.ggmap embed {
height: 100%;
}
    
}


/* 340pixel start */
@media screen and ( max-width: 340px ) {
    
.normal .header_box_bar {
  padding: 10px 0px 15px 5px;
}
    
.normal .header_box_bar ul.header_box_menu {
    display: none;

}

    
}

