@charset "UTF-8";
/*---------------------------------------------------------------------------

	共通
	
	ピースマイルって
	ピースマイルって - ごあいさつ
	ピースマイルって - 施設概要・アクセス
	スタッフ紹介 TOPページ
	スタッフ紹介 詳細ページ
	プライバシーポリシー
	リンク
	サイトマップ

--------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
	共通
--------------------------------------------------------------------------*/
/*----- about関連サブメニュー -----*/
.page_sub_menu.about { margin: 70px auto 0 auto; text-align: center; max-width: 1000px; }
.page_sub_menu.about ul li { margin: 0 10px; width: calc(25% - 20px); }
.page_sub_menu.about ul li a { padding: 17px 10px; border: 1px solid #70c0e8; line-height: 1.4; font-size: 17px; border-radius: 3px; }
.page_sub_menu.about ul li a:link, .page_sub_menu.about ul li a:visited { color: #3692b5; background: #d8edf5; }
.page_sub_menu.about ul li a:active, .page_sub_menu.about ul li a:hover { color: #fff; background: #70c0e8; }
.page_sub_menu.about ul li a.current:link, .page_sub_menu.about ul li a.current:visited { color: #fff; background: #70c0e8; }
.page_sub_menu.about ul li a.current:active, .page_sub_menu.about ul li a.current:hover { color: #fff; background: #70c0e8; }

/*--------------------------------------------------------------------------
	ピースマイルって
--------------------------------------------------------------------------*/
#about .topimg { margin: 0 auto 50px auto; height: 400px; background: url("../../about/img/bg_about01.jpg") no-repeat center center; background-size: auto 400px; max-width: 2000px; }
#about .intro { margin: 0 auto 90px auto; padding: 0 10px; max-width: 920px; text-align: center; }
#about .intro p { font-size: 17px; }
#about .intro p:first-of-type { color: #70c0e8; }
#about .intro h3 { margin: 40px 0 30px 0; line-height: 1.4; color: #3692b5; font-size: 32px; font-weight: 500; }
#about .access { padding: 0 10px; }
#about .access h3 { margin: 0 auto 20px auto; max-width: 915px; }
#about .access h3 span { padding: 2px 0 2px 42px; display: inline-block; line-height: 1.2; color: #3692b5; background: url("../img/ic_map01.png") no-repeat left top 2px; background-size: 20px auto; font-size: 26px; font-weight: 500; }
#about .access .frm { margin: 0 auto; padding: 30px 15px; border: 2px solid #7ab7ce; max-width: 1100px; border-radius: 3px; }
#about .access .frm .item { margin: 0 auto; display: table; width: 100%; max-width: 915px; table-layout: fixed; }
#about .access .frm .item .ph, #about .access .frm .item .cap { display: table-cell; vertical-align: top; }
#about .access .frm .item .ph { width: 450px; }
#about .access .frm .item .cap { padding: 0 0 0 50px; }
#about .access .frm .item .cap h4 { margin: 0 0 10px 0; padding: 0 0 0 18px; line-height: 1.2; color: #70c0e8; background: url("../img/ar01_lb_r.png") no-repeat left top 8px; background-size: 8px auto; font-size: 19px; font-weight: 500; }
#about .access .frm .item .cap p { font-size: 19px; }
#about .access .frm .item .cap p a.map { margin: 5px 0 0 0; display: inline-block; width: 90px; line-height: 30px; font-size: 19px; text-align: center; border-radius: 3px; }
#about .access .frm .item .cap p a.map:link, #about .access .frm .item .cap p a.map:visited { color: #fff; background: #70c0e8; }
#about .access .frm .item .cap p a.map:active, #about .access .frm .item .cap p a.map:hover { color: #fff; background: #3692b5; }
#about .access .frm .item .cap p span { display: inline-block; }
#about .access .frm .item .cap p span.post { margin: 0 10px 0 0; }
#about .access .frm .item .cap p span.in_blo { margin: 0 10px 0 0; }
#about .access .frm .item .cap p + h4 { margin: 40px 0 10px 0; }
#about .access .frm .item .cap ul { padding: 0 0 0 1em; text-indent: -1em; }

/*--------------------------------------------------------------------------
	ピースマイルって - ごあいさつ
--------------------------------------------------------------------------*/
#about_welcome .intro { padding: 60px 10px 0 10px; background: url("../../about/img/bg_welcome.png") no-repeat center top; background-size: auto 700px; }
#about_welcome .intro .frm { margin: 0 auto; display: flex; display: -webkit-flex; max-width: 1000px; flex-wrap: wrap; }
#about_welcome .intro .frm .cap { flex: 1; -webkit-flex: 1; }
#about_welcome .intro .frm .cap h3 { color: #fff; font-size: 26px; font-weight: 500; text-shadow: 1px 1px 4px #70c0e8, -1px 1px 4px #70c0e8, 1px -1px 4px #70c0e8, -1px -1px 4px #70c0e8; }
#about_welcome .intro .frm .ph { padding: 0 0 0 40px; width: 340px; }
#about_welcome .intro .frm .ph img { border-radius: 5px; }
#about_welcome .intro .frm .msg { margin: 70px 0 50px 0; width: 100%; text-align: center; }
#about_welcome .intro .frm .msg p { margin: 30px 0 0 0; font-size: 21px; }
#about_welcome .intro .frm .msg p:first-of-type { margin: 0; }
#about_welcome .intro .frm .data { width: 100%; }
#about_welcome .intro .frm .data dl { margin: 0 0 0 auto; display: flex; display: -webkit-flex; width: 100%; max-width: 420px; }
#about_welcome .intro .frm .data dl dt { width: 150px; }
#about_welcome .intro .frm .data dl dd { flex: 1; -webkit-flex: 1; }
#about_welcome .philosophy { margin: 120px auto 0 auto; padding: 30px 10px; background: #f2ffff; }
#about_welcome .philosophy .frm { margin: 0 auto; display: table; width: 100%; max-width: 700px; }
#about_welcome .philosophy .frm .name, #about_welcome .philosophy .frm .cap { display: table-cell; vertical-align: middle; }
#about_welcome .philosophy .frm .name { width: 220px; }
#about_welcome .philosophy .frm .name h4 { line-height: 1.4; color: #70c0e8; font-size: 28px; font-weight: 500; }
#about_welcome .philosophy .frm .name h4 span { display: block; line-height: 1.4; font-size: 15px; }
#about_welcome .philosophy .frm .name h4 span:nth-of-type(2) { margin: 0 0 10px 0; }
#about_welcome .philosophy .frm .name h4 br { display: none; }
#about_welcome .philosophy .frm .cap { padding: 20px 20px 20px 30px; color: #3692b5; background: #fff; font-size: 19px; border-radius: 3px; }

/*--------------------------------------------------------------------------
	ピースマイルって - 施設概要・アクセス
--------------------------------------------------------------------------*/
#about_outline .cat_sbj { margin: 0 0 60px 0; padding: 24px 10px; background: #70c0e8; }
#about_outline .cat_sbj h3 { margin: 0 auto; color: #fff; font-size: 27px; font-weight: 500; max-width: 1100px; }
#about_outline .intro { margin: 0 auto 90px auto; padding: 0 10px; max-width: 920px; text-align: center; }
#about_outline .intro p { font-size: 17px; }
#about_outline .intro p:first-of-type { margin: 0 0 25px 0; line-height: 1.4; color: #3692b5; font-size: 32px; }
#about_outline .location .frm .location_info { margin: 0 auto 70px auto; }
#about_outline .location .about_transfer { margin: 0 auto 70px auto; }
#about_outline .access .frm .location_info { margin: 0 auto 70px auto; }
#about_outline .access .frm .location_info .ph { order: 2; }
#about_outline .access .frm .location_info .ph.map img { border: 1px solid #3692b5; }
#about_outline .access .frm .location_info .ph p.map_more { margin: 20px auto 0 auto; }
#about_outline .access .frm .location_info .ph p.map_more a { margin: 0 auto; display: block; width: 100%; line-height: 32px; font-size: 19px; text-align: center; max-width: 240px; border-radius: 3px; }
#about_outline .access .frm .location_info .ph p.map_more a:link, #about_outline .access .frm .location_info .ph p.map_more a:visited { color: #fff; background: #3692b5; }
#about_outline .access .frm .location_info .ph p.map_more a:active, #about_outline .access .frm .location_info .ph p.map_more a:hover { color: #fff; background: #70c0e8; }
#about_outline .access .frm .location_info .cap { padding: 0 50px 0 0; order: 1; }
#about_outline .support .frm { margin: 0 auto 70px auto; display: flex; display: -webkit-flex; width: 100%; max-width: 1100px; flex-wrap: wrap; }
#about_outline .support .frm .list { margin: 0 20px; width: calc(50% - 40px); font-size: 17px; }
#about_outline .support .frm .list:nth-of-type(n+3) { margin: 70px 20px 0 20px; }
#about_outline .support .frm .list:last-of-type { margin: 70px 0 0 0; padding: 0; width: 100%; }
#about_outline .support .frm .list:last-of-type .ph { margin: 0 0 20px 0; height: 240px; background: url("../../about/img/img_outline01.jpg") no-repeat center center; background-size: auto 240px; }
#about_outline .support .frm .list:last-of-type h4, #about_outline .support .frm .list:last-of-type p { padding: 0 20px; }
#about_outline .support .frm .list h4 { color: #3692b5; font-size: 26px; font-weight: 500; }

/*--------------------------------------------------------------------------
	スタッフ紹介 TOPページ
--------------------------------------------------------------------------*/
#staff .cat_sbj { margin: 0 0 60px 0; padding: 24px 10px; background: #70c0e8; }
#staff .cat_sbj p { margin: 0 auto; color: #fff; font-size: 27px; max-width: 1100px; }
#staff .intro { margin: 0 auto 90px auto; padding: 0 10px; max-width: 920px; text-align: center; }
#staff .intro p { font-size: 17px; }
#staff .intro p:first-of-type { margin: 0 0 25px 0; line-height: 1.4; color: #3692b5; font-size: 32px; }
#staff .frm { margin: 0 auto; display: flex; display: -webkit-flex; width: 100%; max-width: 1100px; flex-wrap: wrap; }
#staff .frm .list { margin: 0 10px; padding: 30px; border: 1px solid #70c0e8; display: flex; display: -webkit-flex; width: 100%; border-radius: 3px; }
#staff .frm .list:nth-of-type(n+2) { margin: 20px 10px 0 10px; }
#staff .frm .list:nth-of-type(n+3) { width: calc(50% - 20px); }
#staff .frm .list:has(.ph) .cap { padding: 0 50px 0 0; }
#staff .frm .list .cap { flex: 1; -webkit-flex: 1; }
#staff .frm .list .cap h3 { line-height: 0; font-size: 0; font-weight: 500; }
#staff .frm .list .cap h3 a:link span.position, #staff .frm .list .cap h3 a:visited span.position { color: #fff; background: #7ab7ce; }
#staff .frm .list .cap h3 a:link span.name, #staff .frm .list .cap h3 a:visited span.name { color: #3692b5; }
#staff .frm .list .cap h3 a:active span.position, #staff .frm .list .cap h3 a:hover span.position { color: #fff; background: #70c0e8; }
#staff .frm .list .cap h3 a:active span.name, #staff .frm .list .cap h3 a:hover span.name { color: #70c0e8; }
#staff .frm .list .cap h3 span { display: inline-block; line-height: 24px; vertical-align: middle; }
#staff .frm .list .cap h3 span.position { margin: 0 15px 0 0; width: 120px; font-size: 14px; text-align: center; border-radius: 3px; }
#staff .frm .list .cap h3 span.name { padding: 0 18px 0 0; background: url("../img/ar02_lb_r.png") no-repeat right center; background-size: 8px auto; font-size: 26px; }
#staff .frm .list .cap p { margin: 25px 0 0 0; padding: 15px 0 0 0; border-top: 1px solid #7ab7ce; font-size: 14px; }
#staff .frm .list .ph { width: 180px; }
#staff .frm .list .ph img { border-radius: 5px; }

/*--------------------------------------------------------------------------
	スタッフ紹介　詳細ページ
--------------------------------------------------------------------------*/
#staff_ar .person { margin: 0 auto 90px auto; padding: 0 10px; display: flex; display: -webkit-flex; width: 100%; max-width: 1020px; }
#staff_ar .person:has(.ph) .cap { padding: 0 50px 0 0; }
#staff_ar .person .cap { font-size: 14px; flex: 1; -webkit-flex: 1; }
#staff_ar .person .cap p { font-size: 17px; }
#staff_ar .person .cap p:first-of-type { margin: 0 0 10px 0; line-height: 1.4; color: #3692b5; font-size: 32px; }
#staff_ar .person .cap h3 { margin: 25px 0 0 0; line-height: 0; font-size: 0; font-weight: 500; }
#staff_ar .person .cap h3 span { display: inline-block; line-height: 24px; vertical-align: middle; }
#staff_ar .person .cap h3 span.position { margin: 0 15px 0 0; width: 120px; color: #fff; background: #7ab7ce; font-size: 14px; text-align: center; border-radius: 3px; }
#staff_ar .person .cap h3 span.name { padding: 0 18px 0 0; color: #3692b5; background: url("../img/ar02_lb_r.png") no-repeat right center; background-size: 8px auto; font-size: 26px; }
#staff_ar .person .ph { width: 180px; }
#staff_ar .person .ph img { border-radius: 5px; }
#staff_ar .faq { margin: 70px auto 0 auto; }
#staff_ar .faq:first-of-type { margin: 0 auto; }
#staff_ar .faq .cat_sbj { margin: 0 0 40px 0; padding: 14px 10px; background: #70c0e8; }
#staff_ar .faq .cat_sbj h4 { margin: 0 auto; color: #fff; max-width: 1000px; }
#staff_ar .faq .cat_sbj h4 span { padding: 0 0 0 26px; background: url("../img/ar01_wh_r.png") no-repeat left top 10px; background-size: 10px auto; font-size: 27px; font-weight: 500; }
#staff_ar .faq .comment { margin: 0 auto; padding: 0 10px; max-width: 1020px; }
#staff_ar .back_btn a { margin: 100px auto 0 auto; }

/*--------------------------------------------------------------------------
	プライバシーポリシー
--------------------------------------------------------------------------*/
#privacy .frm > div, #privacy .frm > section { margin: 0 auto; max-width: 900px; }
#privacy .frm div.intro { margin: 0 auto 30px auto; }
#privacy .frm > section { padding: 45px 0 0 0; }
#privacy .frm > section:first-of-type { border-top: 1px solid #add3e1; }
#privacy .frm > section h3 { margin: 0 0 15px 0; font-size: 21px; font-weight: 500; }
#privacy .frm > section .item { margin: 10px 0 0 0; }
#privacy .frm > section .item ul { margin: 0 0 0 1em; }
#privacy .frm .name { margin: 50px auto 0 auto; font-size: 17px; text-align: right; }

/*--------------------------------------------------------------------------
	リンク
--------------------------------------------------------------------------*/
#link > section { margin: 70px auto 0 auto; max-width: 900px; }
#link > section:first-of-type { margin: 0 auto; }
#link > section h3 { padding: 0 0 25px 50px; line-height: 1.2; background: url("../img/ic_p01_01.png") no-repeat left top 2px; background-size: 30px auto; font-size: 26px; font-weight: 500; letter-spacing: 0.14em; }
#link > section .item { margin: 20px 0 0 0; }
#link > section .item:first-of-type { margin: 0; }
#link > section .item a { padding: 25px 50px 15px 30px; display: block; width: 100%; border-radius: 5px; }
#link > section .item a h4 { margin: 0 0 5px 0; line-height: 1.4; font-size: 19px; font-weight: 500; color: #70c0e8; }
#link > section .item a h4 span::after { padding: 0 10px 0 0; display: inline-block; width: 16px; height: 12px; background: url("../img/ic_window01.png") no-repeat right center; background-size: 16px auto; content: ''; }
#link > section .item a p { color: #444; }
#link > section .item a:link, #link > section .item a:visited { background: url("../img/ar01_lb_r.png") no-repeat #f9fcfc right 20px center; background-size: 10px auto; }
#link > section .item a:active, #link > section .item a:hover { background: url("../img/ar01_lb_r.png") no-repeat #d8edf5 right 20px center; background-size: 10px auto; }

/*--------------------------------------------------------------------------
	サイトマップ
--------------------------------------------------------------------------*/
#sitemap > section { margin: 70px auto 0 auto; max-width: 900px; }
#sitemap > section:first-of-type { margin: 0 auto; }
#sitemap > section h3 { padding: 2px 0 25px 50px; line-height: 1.2; color: #70c0e8; background: url("../img/ic_p01_05.png") no-repeat left top; background-size: 32px auto; font-size: 21px; font-weight: 500; letter-spacing: 0.14em; }
#sitemap > section ul { display: flex; display: -webkit-flex; width: 100%; flex-wrap: wrap; }
#sitemap > section ul li { margin: 0 10px; display: flex; display: -webkit-flex; width: calc(33.33% - 20px); }
#sitemap > section ul li:nth-of-type(n+4) { margin: 10px 10px 0 10px; }
#sitemap > section ul li a { padding: 5px 20px 5px 40px; border: 1px solid #7ab7ce; display: block; width: 100%; border-radius: 5px; flex-grow: 1; }
#sitemap > section ul li a:link, #sitemap > section ul li a:visited { background: url("../img/ar01_lb_r.png") no-repeat #fff left 20px top 14px; background-size: 8px auto; }
#sitemap > section ul li a:active, #sitemap > section ul li a:hover { background: url("../img/ar01_lb_r.png") no-repeat #d8edf5 left 20px top 14px; background-size: 8px auto; }

/*# sourceMappingURL=sub_01.css.map */
