/*==== defult ====*/
html { -webkit-text-size-adjust: 100%; }

body { margin: 0; }

/*==== ap_base ====*/
.page_head, #ap_noscript, #ap_foot, #ap_head { font-size: 14px; line-height: 1.5; }
.page_head *, #ap_noscript *, #ap_foot *, #ap_head * { box-sizing: border-box; margin-top: 0; }
.page_head ul, .page_head ol, #ap_noscript ul, #ap_noscript ol, #ap_foot ul, #ap_foot ol, #ap_head ul, #ap_head ol { list-style: none; padding: 0; }
.page_head a, #ap_noscript a, #ap_foot a, #ap_head a { text-decoration: none; }
.page_head img, #ap_noscript img, #ap_foot img, #ap_head img { vertical-align: bottom; }

/*==== #header_emg ====*/
#ap_emg { width: 950px; margin-left: auto; margin-right: auto; padding-bottom: 8px; }

/*==== .ap_inner ====*/
.ap_inner { position: relative; width: 950px; margin: 0 auto; }

/*==== #ap_head ====*/
#ap_head .ap_inner { padding: 15px 0 7px; *zoom: 1; }
#ap_head .ap_inner:before, #ap_head .ap_inner:after { content: ""; display: table; clear: both; }
#ap_head .ap_inner:after { clear: both; }
#ap_head .ap_logo { float: left; font-size: 22px; margin: 0; }
#ap_head .ap_top { float: right; font-size: 12px; line-height: 1; margin: 1em 0 0 0; }
#ap_head .ap_top a:hover { text-decoration: underline; }

/*==== #ap_noscript ====*/
#ap_noscript { width: 950px; margin: 1em auto; padding: 1em 0; border: 1px solid #24b0ff; background: #fff; text-align: center; }
#ap_noscript p { margin: 0; }
#ap_noscript p.hdg { font-size: 20px; font-weight: bold; }
#ap_noscript a:hover { text-decoration: underline; }

/*==== #release_end ====*/
#release_end { overflow: hidden; background-color: #fff; }
#release_end #release_end_message { width: 950px; box-sizing: border-box; border: 2px solid red; margin: 1em auto; padding: 1em 0.8em; position: relative; color: red; font-family: sans-serif; font-size: 18px; line-height: 1em; font-weight: bold; text-align: center; letter-spacing: 1px; }

/*==== #ap_foot ====*/
#ap_foot { text-align: center; border-top: 1px solid #cccccc; }
#ap_foot .ap_inner { padding: 20px 0; }
#ap_foot .ap_inner * { line-height: 1; }
#ap_foot .ap_period { text-align: center; margin-bottom: 15px; }
#ap_foot .ap_device { display: inline-block; text-align: center; border: 1px solid #e7e7e7; background: #f9f9f9; padding: 10px 30px; margin-bottom: 15px; }
#ap_foot .ap_device dt, #ap_foot .ap_device dd { display: inline; padding-right: 1em; margin-left: 0; }
#ap_foot .ap_device dt a:hover, #ap_foot .ap_device dd a:hover { text-decoration: underline; }
#ap_foot .ap_device .pc { font-weight: bold; border-left: 1px solid #000; padding-right: 0; padding-left: 1em; }
#ap_foot .ap_utility_01 { text-align: center; margin-bottom: 10px; }
#ap_foot .ap_utility_01 li { display: inline; border-left: 1px solid #000; padding-left: 1em; }
#ap_foot .ap_utility_01 li:first-child { border-left: 0; padding-left: 0; padding-right: 1em; }
#ap_foot .ap_utility_01 li a:hover { text-decoration: underline; }
#ap_foot .ap_utility_02 { font-size: 12px; text-align: center; margin-bottom: 10px; }
#ap_foot .ap_utility_02 li { display: inline; }
#ap_foot .ap_utility_02 li a:hover { text-decoration: underline; }
#ap_foot .ap_impressions { display: block; text-align: center; margin-bottom: 10px; }
#ap_foot .ap_impressions a:hover { text-decoration: underline; }
#ap_foot .ap_copyright { text-align: center; line-height: 1.5; margin: 0; }
#ap_foot .ap_copyright small { font-size: 12px; }

/*==== .page_head ====*/
.page_head .ap_inner { *zoom: 1; }
.page_head .ap_inner:before, .page_head .ap_inner:after { content: ""; display: table; clear: both; }
.page_head .ap_inner:after { clear: both; }
.page_head .page_logo { float: left; margin: 0; }
.page_head .page_provider { float: right; margin: 20px 0 0 40px; }
.page_head .ap_sns.pc_head { float: right; margin: 15px 0 0 0; }

/*==== .ap_sns ====*/
.ap_sns { list-style: none; padding: 0; *zoom: 1; font-size: 20px; line-height: 1; }
.ap_sns:before, .ap_sns:after { content: ""; display: table; clear: both; }
.ap_sns:after { clear: both; }
.ap_sns li { float: left; margin-left: 10px; }
.ap_sns li:first-child { margin-left: 0; }
.ap_sns li a { display: block; width: 80px; color: #fff; text-align: center; text-decoration: none; border-radius: 3px; padding: 5px 0; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; }
.ap_sns .tw a { background-color: #00b3e6; }
.ap_sns .tw a:hover { background-color: #33c6f4; }
.ap_sns .fb a { background-color: #4c6daa; }
.ap_sns .fb a:hover { background-color: #6f8aba; }
.ap_sns .hb a { background-color: #00b3e6; }
.ap_sns .hb a:hover { background-color: #33c2ea; }
