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


/* common
-------------------------------------------------------------------- */
body {
    background-position: center 45px;
    background-size: 100%, 100%;
    font-size: 12px;
}

#wrapper {
	min-width: 100%;
	overflow: hidden;
}

#headerWrap {
    position: fixed;
    z-index: 998;
}


/* header footer
-------------------------------------------------------------------- */
#headTopWrap {
	height: auto;
}

#headLeft h1 img {
	width: 60%;
}

#headLeft p#spLink,
ul#headRight {
	display: none;
}

#fixFooter {
	background-color: transparent;
}

div#fixTopics {
	display: none;
}

p#toTop a {
	background: url(/common/img/foot/btn_pagetop.png) no-repeat right top;
	background-color: #0cc61d;
	padding: 16px 30px 0 10px;
	bottom: 0;
	height: 24px;
	width: auto;
}


/* container
-------------------------------------------------------------------- */
#container {
    margin: 45px 0 0;
    overflow: hidden;
    width: auto;
}

#ttl h1 {
    margin: 20px 3.2%;
}

#ttl h1 img {
    width: 100%;
    height: auto;
}

#ttl h1 span {
    font-size: 20px;
}

#lead {
    font-size: 14px;
    font-weight: normal;
    margin: 0 3.2% 30px;
    text-align: left;
}

#lead:before,
#lead:after,
#lead p:before,
#lead p:after {
    display: none;
}

#main {
    margin: 0 3.2%;
}

#main h2:before,
#main h2:after {
    display: none;
}

.contWrap {
    margin-bottom: 30px; 
    padding: 20px 3.2%;
}

.result {
    margin: 0 auto 20px;
}

.result dt {
    font-size: 12px;
}

.result dd {
    font-size: 20px;
}

.result dd a {
    display: block;
    margin: 0 auto;
    text-align: center;
    width: 100px;
}

.photo img {
    width: 100%;
}

.end {
    font-size: 20px;
}

.program {
    padding: 20px 3.2%;
    width: auto;
}

p.programTtl a {
    display: block;
    margin: 0 auto;
    text-align: center;
    width: 100px;
}

.banner {
    width: 100%;
}

.info {
    width: auto;
}

#thanks {
    text-align: left;
    margin-bottom: 30px;
    padding: 20px 3.2%;
}

#thanks p:first-child {
    background: #fff;
    font-size: 20px;
    margin: 0 0 20px;
    height: auto;
    line-height: 1.3;
}

#thanks p:first-child:before,
#thanks p:first-child:after {
    display: none;
}

.ttlH2 {
    margin: 20px 3.2%;
    padding: 20px 3.2%;
    height: auto;
    width: auto;
}

.ttlH2 h2 {
    font-size: 20px;
    line-height: 1.3;
}

#archive article {
    background: #fff;
    margin: 30px 3.2%;
}

#archive article h3 {
    padding: 20px 3.2%;
    margin: 0;

}

#archive article h3:before,
#archive article h3:after {
    display: none;
}

#archive article dl {
    margin: 0;
}

.box {
    margin: 0 3.2%;
    padding-bottom: 20px;
}

.subject {
    float: none;
    margin: 0;
    width: auto;
}

.movie {
    float: none;
    padding: 0;
    width: auto;
}

#header_onsen {
    background: none;
    height: auto;
    min-width: 100%;
}

#header_onsen img {
    width: 100%;
}

#footer_onsen p {
    width: 100%;
    padding-top: 6px;
    font-size: 7px;
    text-align: center;
}

#footer_onsen {
    min-width: 100%;
}

}