@media screen and (max-width: 640px) {

/*
======== table of content. ===============

summary:ワイヤーフレーム要素

==========================================
*/
.sec_common_inner { width:100%; margin:0 auto; padding:0 10px; }

/*----------------------------------------
wrapper
------------------------------------------*/
#wrapper { min-width:320px; }


/*----------------------------------------
header
------------------------------------------*/
header { position:absolute; top:0; width:100%; padding:10px 0 0; background:url(/global/images/bg_header.png) repeat; z-index:100; }
header.fixed { position:fixed; top:0; background:url(/global/images/bg_header_fixed.png) repeat; }
header h1 { float:none; width:220px; margin:0 0 10px; }

#globalnav { position:relative; margin:0 -10px; background-color:#a8cae5; }
#globalnav #trigger { display:block; }
#globalnav ul { display:none; padding-top:0; }
#globalnav li { display:block; border-top:1px solid #fff; }
#globalnav li:first-child { display:block; border-top:none; }
#globalnav a { display:block; padding:5px 20px; color:#fff; border-bottom:none; text-decoration:none; }
#globalnav a:hover { color:#fff; border-bottom:none; }
#globalnav .current a { border-bottom:none; color:#007ac3; }

#globalnav .nav_include { position:relative; }
#globalnav .nav_include span { display:block; padding:5px 20px; color:#fff; }
#globalnav .nav_include.hover span { border-bottom:1px solid #007ac3; }

#globalnav .nav_include ul { display:block; position:relative; width:auto; margin:0 20px; padding:0; }
#globalnav .nav_include ul:before { content:""; display:none; }
.staff #globalnav .nav_include ul { width:auto; }
#globalnav .nav_include li { display:block; margin-top:0; padding:0; border-top:1px dotted #fff; }
#globalnav .nav_include li:first-child { border-top:1px dotted #fff; }
#globalnav .nav_include li a { display:block; color:#fff; border-bottom:1px solid transparent; }
#globalnav .nav_include li a:hover,
#globalnav .nav_include li.current a { color:#007ac3; border-bottom:1px solid transparent; background-image:url(/global/images/icon_arrow_triangle_b@2x.png); background-size:6px 10px; }

#globalnav .nav_include.current span,
#primary #globalnav .nav_gallery span,
#secondary #globalnav .nav_gallery span,
#grocery #globalnav .nav_shop span,
#varietyshop #globalnav .nav_shop span,
#outline #globalnav .nav_company span { border-bottom:1px solid transparent; }

#globalnav .sec_login { position:relative; right:auto; top:auto; width:100%; padding:5px 0; text-align:center; }
#globalnav .sec_login p { margin-bottom:2px; font-size:71.4%; color:#fff; }
#globalnav .sec_login a { display:block; margin:5px 20px; border:1px solid #555; background-color:#fff; color:#555; text-decoration:none; }
#globalnav .sec_login a:hover { border:1px solid #555; background-color:#fff; color:#555; }

/*----------------------------------------
promotion
------------------------------------------*/
#promotion { min-width:320px; padding:93px 10px 40px; background-size:cover; }
#promotion h1 { width:100%; padding:0; }
#promotion h1 span { padding:5px 10px; font-size:150%; }

/*----------------------------------------
content
------------------------------------------*/
#content { min-height:200px; padding:30px 0 60px; background-color:#fff; }
#content .sp { display:block; }

#sec_main { float:none; width:100%; padding:0; }
#content h2 { margin:0; }

#sec_main h2 { margin:0; }
#sec_main h3 { margin:10px 0 0; font-size:114.2%; }
#sec_main .txt_term { margin:30px 0 0; font-size:85.7%; }
#sec_main .ttl_article { margin:10px 0 0; }

.list_news { margin-top:10px; }
.list_news li { padding:8px 0 5px; border-bottom:1px solid #f2f1f1; }
.list_news li:first-child { border-top:1px solid #f2f1f1; }
.list_news li a { display:block; color:#555; }
.list_news li a:hover { color:#007ac3; }
.list_news li a > span { display:inline-block; vertical-align:middle; }
.txt_date { width:auto; margin-right:10px; }
.txt_genre { width:auto; }
.txt_genre span { display:inline-block; padding:1px 10px; }
.icon_news span { background-color:#ffede0; }
.icon_primary span { background-color:#e1f3ff; }
.icon_secondary span { background-color:#e3ffe0; }
.icon_event span { background-color:#fce0ff; }
.list_news li a .txt_detail { display:block; }

.list_thumbs,
.sec_edit { margin:10px 0 0; }
.list_thumbs li,
.list_thumbs img  { margin:10px 0 0; }


#sec_main .sec_outline { margin-top:30px; padding:10px; background-color:#f5f5f5; text-align:center; }
#sec_main .sec_outline h4 { margin-bottom:10px; text-align:left; }
.img_outline_thumb { float:none; }
#sec_main .sec_timetable { max-width:300px; min-height:69px; margin:0 auto; padding:10px; }
#sec_main .sec_timetable p { text-align:left; }
#sec_main .sec_map { margin-top:10px; }

.sec_equally .sec_left { float:none; width:100%; margin-top:30px; }
.sec_equally .sec_right { float:none; width:100%; margin-top:30px; }
.sec_equally.sec_solo .sec_left { margin-top:0; }
.sec_equally.sec_solo .sec_right { margin-top:30px; }

.sec_equally3 .sec_column { float:none; width:100%; margin:20px 0 0 0; }
.sec_equally3 .sec_column:last-child { margin:20px 0 0 0; }

.sec_form .sec_table { display:block; }
.sec_form .sec_table:first-child { margin-top:0; }
.sec_form .sec_table .cell { display:block; }
.sec_form .sec_table .cell:first-child { width:100%; }
.sec_form input[type=text],
.sec_form input[type=email] { width:100%; margin-right:0; }

.link_table { display:block; margin-top:20px; }
.link_table a { display:block; }
.link_table .sec_table { display:block; }
.link_table .sec_table .cell { display:block; width:100%; padding:5px 10px 15px; }
.link_table .sec_table .cell:first-child { width:100%; padding:15px 10px 5px; }
.link_table a:nth-child(2n) .sec_table .cell {  }

#sec_sub { float:none; width:100%; margin-top:30px; }
.sec_sub_inner { padding:9px; border:1px solid #f2f1f1; background-color:#faf7f7; }
#sec_sub h3 { background:url(/global/images/icon_arrowdown_chevron_g@2x.png) no-repeat right center; background-size:10px 6px; }
#sec_sub h3.on { background:url(/global/images/icon_arrowup_chevron_g@2x.png) no-repeat right center; background-size:10px 6px; }
#sec_sub .ttl_localnav { padding:9px; border:1px solid #f2f1f1; background-color:#faf7f7; background-position:97% center; }
#sec_sub .ttl_localnav.on { background-color:#faf7f7; background-position:97% center; }
#sec_sub nav { display:none; }
#sec_sub .localnav { margin-top:0; }
#sec_sub li { padding:9px 0; border-bottom:1px solid #f2f1f1; }
#sec_sub li:first-child { border-top:1px solid #f2f1f1; }
#sec_sub .txt_date { display:block; }
#sec_sub .nav_category li { padding:20px 0 0; border:none; }
#sec_sub .nav_category a { display:block; padding:1px 25px; border:2px solid #a8cae5; background:#fff url(/global/images/icon_arrow_chevron_b@2x.png) no-repeat 98% center; background-size:6px 10px; color:#84a4c4; text-align:center; }
#ie8 #sec_sub .nav_category a { background-image:url(/global/images/icon_arrow_chevron_b.png); }
#sec_sub .nav_category a:hover { border:2px solid #007ac3; background:#007ac3 url(/global/images/icon_arrow_chevron_w@2x.png) no-repeat 98% center; background-size:6px 10px; color:#fff; }
#ie8 #sec_sub .nav_category a:hover { border:2px solid #007ac3; background:#007ac3 url(/global/images/icon_arrow_chevron_w.png) no-repeat 98% center; color:#fff; }


/*----------------------------------------
footer
------------------------------------------*/
footer { position:relative; padding:20px 0; background-color:#95badf; color:#fff; text-align:center; }
footer a { color:#fff; }
footer a:hover { color:#007ac3; }

#footernav { text-align:left; margin:0 20px; }
#footernav li { display:block; margin-top:10px; }
#footernav li:first-child { margin-top:0; }
#footernav li a { padding-left:11px; background:url(/global/images/icon_arrow_triangle_w@2x.png) no-repeat 0 7px; background-size:5px 8px; }
#footernav li a:hover { background-image:url(/global/images/icon_arrow_triangle_b@2x.png); }

footer .txt_copyright { margin-top:20px; padding-top:20px; border-top:1px solid #82abd4; }

}
