@charset "UTF-8";


html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
	font-weight: normal;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
    display:block;
}
ul {
    list-style:none;
}
img {
	width:100%;
	border:none;
	vertical-align:bottom;
}
blockquote, q {
    quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}
address, em, code, cite, dfn, var, optgroup {
  font-style: normal;
}
a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
	text-decoration:none;
	outline:none;
	color:#333;
}
table {
    border-collapse:collapse;
    border-spacing:0;
}
input, select {
    vertical-align:baseline;
}
input[type="button"],input[type="text"],input[type="submit"],input[type="reset"],textarea {
	-webkit-appearance:none;
	border-radius:0;
}
input[type="text"],textarea {
	border: 1px solid #cecece;
	font-size: 13px;
	padding: 5px;
	box-sizing: border-box;
}
input[type="button"],input[type="submit"],input[type="reset"] {
	border: none;
	border-radius: 7px;
	color: #fff;
	text-align: center;
	cursor: pointer;
}
@media only screen and (min-width:1px) and (max-width:750px){
input[type="text"],textarea {
	font-size: 3.733vw;
}
}

/* common
-------------------------------------------------*/
.clearfix:after {
    content: "."; 
    display:block; 
    height:0; 
    clear:both; 
    visibility:hidden;
}
.clearfix {display:inline-block;}
* html .clearfix {height:1%;}
.clearfix {display:block;}
.clear {
	font-size: 1px;
	height: 1px;
	clear: both;
}
.alignCenter {text-align:center;}
.alignLeft {text-align:left;}
.alignRight {text-align:right;}
.valignTop {vertical-align:top;}
.valignMiddle {vertical-align:middle;}
.valignBottom {vertical-align:bottom;}
.bold {font-weight:bold;}
.cblue {color:#01599f;}
.cred {color:#d41619;}
.cgreen {color:#388939;}
.cwhite {color:#fff;}
.corange {color:#ec6619;}

.pcon { display:block; }
.spon { display:none; }
a:hover {
	text-decoration:underline;
}
.al:hover,
.al:hover img {
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter:"alpha(opacity=70)";
	text-decoration: none;
}
@media only screen and (min-width:1px) and (max-width:750px){
.pcon { display:none; }
.spon { display:block; }
a:hover {
	text-decoration:none;
}
.al:hover,
.al:hover img {
	opacity:1.0;
	filter: alpha(opacity=100);
	-ms-filter:"alpha(opacity=100)";
}
}


/* html
-------------------------------------------------*/
html {
	overflow-y:scroll;
}


/* body
-------------------------------------------------*/
body {
	font-family:"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:18px;
	line-height:1.7;
	color:#534741;
	-webkit-text-size-adjust:100%;
}

/* font */
.fo12 { font-size:12px; }
.fo13 { font-size:13px; }
.fo14 { font-size:14px; }
.fo15 { font-size:15px; }
.fo16 { font-size:16px; }
.fo17 { font-size:17px; }
.fo18 { font-size:18px; }
.fo20 { font-size:20px; }
.fo22 { font-size:22px; }
.fo24 { font-size:24px; }
.fo25 { font-size:25px; }
.fo30 { font-size:30px; }
.fo35 { font-size:35px; }
.fo40 { font-size:40px; }
.fo50 { font-size:50px; }


/* #wrapper
-------------------------------------------------*/
#wrapper {
	width:100%;
	margin:0 auto;
}


/* #header
-------------------------------------------------*/
#header {
	padding-top: 70px;
}
#header h1 {
	width: 100%;
	height: 6.25vw;
	max-height: 60px;
	background-color: #05a9c4;
}
#header h1 span {
	color: #fff;
	line-height: 60px;
	display: block;
	max-width: 960px;
	margin: 0 auto;
}
#header .gnav {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 7.3vw;
	max-height: 70px;
	background: url(../images/bg1.jpg) center top repeat;
	border-bottom: 2px solid #05a9c4;
	z-index: 99;
}
#header .gnav .gnav_inner {
	max-width: 960px;
	margin: 0 auto;
}
#header .gnav p {
	width: 32%;
	float: left;
	margin-left: -6.5%;
}
#header .gnav ul {
	width: 72%;
	float: right;
	font-size: 0;
}
#header .gnav ul li {
	font-size: 15px;
	display: inline-block;
	margin-right: 2.5%;
	text-align: center;
}
#header .gnav ul li:last-child {
	margin-right: 0;
}
#header .gnav ul li a {
	width: 100%;
	height: 100%;
	display: block;
	color: #05a9c4;
	margin-top: 24px;
}
#header .gnav ul li:last-child a {
	background-color: #f09500;
	border-radius: 3px;
	margin-top: 15px;
	color: #fff;
	padding: 8% 14%;
}
.idPad {
	margin-top: -70px;
	padding-top: 70px;
}

/* .btn
-------------------------------------------------*/
.btn {
	text-align: center;
	margin-bottom: 85px;
}
.btn.mb {
	margin-bottom: 0;
}
.btn p {
	width: 52.08vw;
	max-width: 500px;
	height: 10.41vw;
	max-height: 100px;
	margin: 0 auto;
}
.btn p a {
	display: block;
	width: 100%;
	height: 100%;
	background: url(../images/icon1.png) 25% center no-repeat #f09500;
	background-size: 50px auto;
	color: #fff;
	font-size: 43px;
	text-align: center;
	border-radius: 5px;
	font-weight: bold;
	line-height: 100px;
	padding-left: 50px;
	box-sizing: border-box;
}
.btn ul {
	width: 52.08vw;
	max-width: 500px;
	margin: 0 auto;
	font-size: 0;
}
.btn ul li {
	display: inline-block;
	font-size: 18px;
	width: 48%;
	margin: 4% 4% 0 0;
}
.btn ul li:last-child {
	margin-right: 0;
}


/* #footer
-------------------------------------------------*/
#footer {
	width:100%;
	height: 2.08vw;
	max-height: 20px;
	background-color: #05a9c4;
	margin-top: 150px;
}
#footer small {
	display: block;
	text-align: center;
	color: #fff;
	line-height: 20px;
}
#footer #pagetop {
	position: fixed;
	right: 10px;
	bottom: 90px;
	display: none;
}
#footer #pagetop img {
	width: 7.81vw;
	max-width: 75px;
}


@media all and (min-width:751px) and (max-width:980px){
body {
	font-size:1.875vw;
}
.fo12 { font-size:1.25vw; }
.fo13 { font-size:1.354vw; }
.fo14 { font-size:1.458vw; }
.fo15 { font-size:1.562vw; }
.fo16 { font-size:1.666vw; }
.fo17 { font-size:1.77vw; }
.fo18 { font-size:1.875vw; }
.fo20 { font-size:2.083vw; }
.fo22 { font-size:2.291vw; }
.fo24 { font-size:2.5vw; }
.fo25 { font-size:2.604vw; }
.fo30 { font-size:3.125vw; }
.fo35 { font-size:3.645vw; }
.fo40 { font-size:4.166vw; }
.fo50 { font-size:5.208vw; }

/* #header
-------------------------------------------------*/
#header {
	padding-top: 7.3vw;
}
#header h1 span {
	line-height: 6.25vw;
}
#header .gnav ul li {
	font-size: 1.562vw;
}
#header .gnav ul li a {
	margin-top: 2.5vw;
}
#header .gnav ul li:last-child a {
	margin-top: 1.562vw;
}
.idPad {
	margin-top: -7.3vw;
	padding-top: 7.3vw;
}
	
/* .btn
-------------------------------------------------*/
.btn {
	margin-bottom: 8.85vw;
}
.btn p a {
	background-size: 5.31vw auto;
	font-size: 4.48vw;
	line-height: 10.41vw;
	padding-left: 5.31vw
}
.btn ul li {
	font-size:1.875vw;
}

/* #footer
-------------------------------------------------*/
#footer {
	margin-top: 15.6vw;
}
#footer small {
	line-height: 2.08vw;
}
}

@media only screen and (min-width:751px){
#menu {
	display: block!important;
}
}

@media only screen and (max-width:750px){
body {
	font-size:3.066vw;
}
	
/* #wrapper
-------------------------------------------------*/
#wrapper {
	padding-right:  constant(safe-area-inset-right);
    padding-left:  constant(safe-area-inset-left);
    padding-right:  env(safe-area-inset-right);
    padding-left:  env(safe-area-inset-left);
}
	
/* #header
-------------------------------------------------*/
#header {
	padding-top: 0;
	position: relative;
}
#header h1 {
	width: 100%;
	height: 9.333vw;
	background-color: transparent;
	margin-top: -9vw;
}
#header h1 span {
	line-height: 9.333vw;
	width: 94%;
	font-size: 5.333vw;
}
#header .hmenu .openMenu {
	width: 100%;
	position: relative;
}
#header .hmenu .openMenu,
#header .hmenu .closeMenu {
	position:absolute;
	right:2.2vw;
	top:2.2vw;
	display:block;
	cursor:pointer;
	width: 10.66vw;
	z-index: 99;
}
#header .hmenu .closeMenu {
	display:none;
}
#header .hmenu .open {
	display:block;
}
#header .hmenu .close {
	display:none;
}
#header .slideMenu {
	position:absolute;
	top: 0;
	left: 0;
	width:100%;
	display:none;
	z-index:99;
	background: url(../images/bg2.jpg) center top no-repeat;
	background-size: cover;
	padding-bottom: 10vw;
}
#header .gnav {
	position: relative;
	height: auto;
	max-height: inherit;
	background: none;
	border: none;
}
#header .gnav .gnav_inner {
	width: 94%;
	margin: 0 auto;
}
#header .gnav p {
	width: 60vw;
	float: none;
	margin: 1vw 0 2vw;
}
#header .gnav ul {
	width: 100%;
	float: none;
}
#header .gnav ul li {
	font-size: 4vw;
	display: list-item;
	margin: 0 0 1.5vw;
	text-align: left;
}
#header .gnav ul li:last-child {
	margin-top: 8vw;
}
#header .gnav ul li:last-child {
	margin: 8vw 0 1.5vw;　/*投票時以外*/
    /*display: none;投票時のみ*/
}
#header .gnav ul li a {
	display: block;
	background: url(../images/bg3.png) center center no-repeat #fff;
	background-size: 86.4vw auto;
	padding: 0 11vw;
	color: #05a9c4;
	line-height: 14.66vw;
	box-sizing: border-box;
	margin: 0;
}
#header .gnav ul li:last-child a {
	width: 100%;
	height: 100%;
	background: url(../images/icon1.png) 12% center no-repeat #f09500;
	background-size: 9vw auto;
	color: #fff;
	font-size: 8.133vw;
	text-align: center;
	border-radius: 5px;
	font-weight: bold;
	line-height: 19vw;
	padding: 0 0 0 9vw !important;
}
#header .gnav ul.vote_nav li a {
	width: 100%;
	height: 100%;
	background: url(../images/icon1.png) 8% center no-repeat #f09500;
	background-size: 9vw auto;
	color: #fff;
	font-size: 7.133vw;
	text-align: center;
	border-radius: 5px;
	font-weight: bold;
	line-height: 19vw;
	padding: 0 0 0 11vw !important;
}
#header .gnav ul.vote_nav li:last-child a {
	width: 100%;
	height: 100%;
	background: url(../images/icon3.png) 5% center no-repeat #ead225;
	background-size: 9vw auto;
	color: #fff;
	font-size: 7.133vw;
	text-align: center;
	border-radius: 5px;
	font-weight: bold;
	line-height: 19vw;
	padding: 0 0 0 11vw !important;
}
#header .gnav ul.vote_nav li {
    margin-top: 9vw;
}
#header .gnav ul.vote_nav li:last-child {
    display:block!important;
    margin-top: 4vw;
}

.idPad {
	margin-top: 0;
	padding-top: 0;
}
.overLay {
 	position: fixed;
 	top: 0;
 	left: 0;
 	width: 100%;
 	height: 100%;
	z-index: 90;
	display: none;
	cursor: pointer;
	background: rgba(255,255,255,0.60)
}

/* .btn
-------------------------------------------------*/
.btn {
	margin-bottom: 7.5vw;
}
.btn p {
	width: 94%;
	max-width: inherit;
	height: 19vw;
	max-height: inherit;
}
.btn p a {
	background: url(../images/icon1.png) 25% center no-repeat #f09500;
	background-size: 9vw auto;
	font-size: 8.133vw;
	line-height: 19vw;
	padding-left: 9vw;
}
.btn ul {
	width: 94%;
	max-width: inherit;
}

/* #footer
-------------------------------------------------*/
#footer {
	height: 4vw;
	margin-top: 33.33vw;
}
#footer small {
	font-size: 2.133vw;
	line-height: 4vw;
}
#footer #pagetop {
	right: 3%;
	bottom: 13vw;
}
#footer #pagetop img {
	width: 12vw;
	max-width: inherit;
}
}