@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800;900&display=swap');
@import url('header.css');
/*------------------------------------------------------------
	イメージの長押しメニュー阻止（スマホ用）
------------------------------------------------------------*/
img {
    touch-callout: none;
    user-select: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-touch-callout: none;
    -moz-user-select: none;
}
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    outline: 0;
    font-size: 1em;
}
body {
    font-size: 62.5%;
}
body,
table,
input,
textarea,
select,
option {
    font-family: 'Roboto', "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
    line-height: 1.1;
}
table,
input,
textarea,
select,
option {
    line-height: 1.1;
}
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary {
    display: block;
}
ol,
ul {
    list-style: none;
}
blockquote,
q {
    quotes: none;
}
:focus {
    outline: 0;
}
ins {
    text-decoration: none;
}
del {
    text-decoration: line-through;
}
a:link {
    color: #000;
    text-decoration: none;
}
a:visited {
    color: #000;
    text-decoration: none;
}
a:hover {
    color: #000;
    text-decoration: underline;
}
a:active {
    color: #000;
    text-decoration: underline;
}
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
    min-width: 1100px;
    color: #000;
    text-align: center;
    line-height: 1.5;
    -webkit-text-size-adjust: none;
}
#container {
    text-align: left;
}
#main {
    margin-bottom: 42px;
}
* html #main {
    zoom: 1;
}
*+html #main {
    zoom: 1;
}
#main:after {
    height: 0;
    visibility: hidden;
    content: ".";
    display: block;
    clear: both;
}
/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
.header {
    margin-bottom: 1px;
    position: relative;
    z-index: 101;
    background-color: #fff;
}
.header02 {
    width: 100%;
    position: fixed;
    left: 0;
    top: -102px;
    z-index: 99;
}
.header .hInner {
    margin: 0 auto 18px;
    width: 970px;
}
.header h1 {
    padding: 26px 0 0;
    float: left;
}
.header .hBox {
    float: right;
}
.header .hLink {
    margin-bottom: 23px;
}
.header .hLink ul {
    float: right;
}
.header .hLink li {
    padding-left: 7px;
    width: 150px;
    float: left;
    font-size: 14px;
    letter-spacing: 2px;
    font-weight: 700;
    text-align: center;
}
.header .hLink .link04 {
    font-weight: 400;
}
.header .hLink li a {
    color: #FFF;
    display: block;
    position: relative;
    text-decoration: none;
}
.header .hLink li a .txt {
    padding: 11px 0 11px 7px;
    display: block;
    position: relative;
    background: url(../img/icon03.png) no-repeat 13px 17px;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.header .hLink li a:hover .txt {
    background: url(../img/icon03.png) no-repeat 25px 17px;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.header .hLink li a .bgOut {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: all .3s;
    transition: all .3s;
    behavior: url(/js/pie.htc);
    border-radius: 0 0 4px 4px;
}
.header .hLink .link01 a .bgOut {
    background: url(../img/btn_bg01.jpg) left bottom;
}
.header .hLink .link02 a .bgOut {
    background: url(../img/btn_bg03.jpg) left bottom;
}
.header .hLink li a:hover .bgOut {
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transition: all .3s;
    transition: all .3s;
}
.header .hLink li a .bgOver {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    filter: alpha(opacity=0);
    behavior: url(/js/pie.htc);
    border-radius: 0 0 4px 4px;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.header .hLink .link01 a .bgOver {
    background-image: url(../img/btn_bg01_over.jpg);
}
.header .hLink .link02 a .bgOver {
    background-image: url(../img/btn_bg03_over.jpg);
}
.header .hLink li a:hover .bgOver {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transition: all .3s;
    transition: all .3s;
}
.header .topNavi ul {
    float: right;
}
.header .topNavi li {
    margin-left: 35px;
    display: inline;
    font-size: 13px;
    font-weight: 700;
}
.header .topNavi li a {
    position: relative;
    display: inline-block;
    color: #000;
    transition: .3s;
    text-decoration: none;
}
.header .topNavi li a:hover {
    color: #CDD7DD;
}
.header .topNavi li a::after {
    position: absolute;
    bottom: .3em;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background-color: #42B153;
    opacity: 0;
    transition: .3s;
}
.header .topNavi li a:hover::after {
    bottom: 0;
    opacity: 1;
}
.header .menu {
    display: none;
}
.header .dropMenu {
    display: none;
}
.header02 .logo {
    margin: 17px 7px 0 0;
    float: left;
}
.header02 .hBox {
    margin: 0 auto;
    padding-bottom: 7px;
    width: 970px;
    float: none !important;
}
.header02 .hLink {
    margin: 0;
    float: right;
}
.header02 .topNavi {
    padding: 15px 0px 0px 3px;
    float: left;
}
.header02 .topNavi li {
    margin-left: 20px;
}
.header03 {
    display: none;
}
/*------------------------------------------------------------
	グローバルナビ
------------------------------------------------------------*/
#gNavi {
    background-color: #F5F4EA;
    border-top: 1px solid #FFF;
}
#gNavi ul {
    display: flex;
    margin: 0 auto;
    width: 970px;
}
#gNavi li {
    float: left;
    border-right: 1px solid #ffffff;
    width: calc(100%/5);
}
#gNavi li a {
    padding-top: 18px;
    height: 32px;
    display: block;
    color: #fff;
    font-size: 12px;
    font-weight: 400;
    outline: none;
    line-height: 1.4;
    position: relative;
    text-align: center;
    z-index: 2;
    -webkit-transition: all .3s;
    transition: all .3s;
    text-decoration: none;
    background-color: #F5F4EA;
}
#gNavi.log li a:hover {
    background-color: #F5F4EA;
}
#gNavi.log li a::before,
#gNavi.log li a::after {
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
    background-color: #42B153;
    -webkit-transition: all .3s;
    transition: all .3s;
}
#gNavi.log li a::before {
    top: 0;
}
#gNavi.log li a::after {
    bottom: 0;
}
#gNavi.log li a:hover::before,
#gNavi.log li a:hover::after {
    height: 0;
    background-color: #42B153;
}
#gNavi li span {
    display: block;
    color: #000000;
    font-size: 13px;
    font-weight: 500;
    font-style: italic;
}
#gNavi li a img {
    margin: -4px 5px 0;
    display: inline-block;
    vertical-align: middle;
}
#gNavi .navi01 {
    padding-top: 7px;
    height: 43px;
    width: 242px;
    color: #000000;
    font-size: 10px;
    text-align: left;
}
#gNavi .navi02 {
    width: 106px;
    color: #000000;
}
#gNavi .navi03 {
    width: 242px;
    color: #000000;
}
#gNavi .navi03 a {
    height: 32px;
    text-align: left !important;
    font-size: 12px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    padding-left: 20px !important;
    color: #000000 !important;
}
#gNavi .navi04 {
    width: 242px;
    color: #000000;
}
#gNavi .navi04 a {
    height: 32px;
    text-align: left !important;
    font-size: 12px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    padding-left: 20px !important;
    color: #000000 !important;
}
#gNavi .navi05 {
    width: 280px;
    color: #000000;
}
#gNavi .navi05 a {
    height: 32px;
    text-align: left !important;
    font-size: 12px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    padding-left: 20px !important;
    color: #000000 !important;
}
#gNavi .navi06 {
    width: 116px;
}
#gNavi .navi07 {
    /* width: 138px; */
}
/*
#gNavi .navi07 a {
	padding-top: 18px;
	height: 32px;
} */
#gNavi .navi08 {
    /* width: 138px; */
}
#gNavi .navi09 {
    /* width: 133px; */
}
#gNavi.log li a {
    color: #FFF;
}
/* add */
#gNavi li.coming-soon{
    position: relative;
}
#gNavi li.coming-soon a{
    color: #aaa !important;
    pointer-events: none;
}
.coming-soon a::after{
    position: revert;
    content: "coming soon";
    font-family: 'Roboto', "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
    font-weight: 600;
    position: absolute;
    padding-left: 7px;
    color: #d5d5d5 !important;
}
/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gFooter {
    margin: 0 auto;
    width: 970px;
}
#gFooter .sns p {
    margin: 11px 20px 0 0;
    float: left;
    color: #ACACAC;
    font-size: 12px;
    font-weight: bold;
}
#gFooter .sns ul {
    float: left;
}
#gFooter .sns li {
    margin-right: 10px;
    float: left;
}
#gFooter .sns li a:hover img {
    filter: alpha(opacity=50);
    opacity: 0.5;
}
#gFooter .pageTop {
    margin: -30px auto 48px;
    width: 33px;
}
#gFooter .fBox {
    clear: both;
}
#gFooter .fBox ul {
    width: 50%;
    float: left;
}
#gFooter .fBox li {
    margin-right: 20px;
    padding: 1px 0 1px 20px;
    float: left;
    font-size: 11px;
    border-left: 1px solid #999;
}
#gFooter .fBox li:first-child {
    padding-left: 0;
    border-left: none;
}
#gFooter .fBox li a {
    display: inline-block;
    transition: .3s;
    position: relative;
    text-decoration: none;
}
#gFooter .fBox li a:hover {
    color: #42B153;
}
#gFooter .fBox li a::after {
    position: absolute;
    bottom: .3em;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background-color: #42B153;
    opacity: 0;
    transition: .3s;
}
#gFooter .fBox li a:hover::after {
    bottom: 0;
    opacity: 1;
}
#gFooter .fBox p {
    margin-top: 5px;
    width: 50%;
    font-size: 9px;
    float: right;
    text-align: right;
}
.cover {
    width: 100%;
    height: 100%;
    position: fixed;
    left: -100%;
    top: 0;
    z-index: 100;
    display: none;
    background: url(../img/drop_menu_bg.jpg) no-repeat left top;
    background-size: 100% 100%;
    background: #e3f0dc;
}
.header .dropMenuShow {
    display: none !important;
}
@media all and (min-width: 0) and (max-width: 767px) {
    html,
    body {}
    body {
        min-width: inherit;
    }
    #container {
        padding-top: 45px;
    }
    .cover {
        display: block;
        z-index: 100;
    }
    .header {
        margin: 0;
        width: 100%;
        padding: 13px 13px;
        position: fixed;
        left: 0;
        top: 0;
        z-index: 90;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        background-color: #fff;
    }
    .header h1 {
        padding: 0;
    }
    .header .hInner {
        margin: 0;
        width: auto;
    }
    .header .hInner .menu {
        padding: 15px;
        position: absolute;
        right: 0;
        top: 0;
        display: block;
    }
    .header .hBox {
        display: none;
    }
    .header .dropMenu {
        padding: 44px 0 60px;
        min-height: 360px;
        width: 100%;
        position: absolute;
        left: 0;
        top: 0;
        z-index: 100;
        overflow: hidden;
    }
    .header .dropMenuShow {
        display: block !important;
    }
    .header .dropMenu .close {
        padding: 15px 18px 15px 0;
        position: absolute;
        right: 0;
        top: 0;
        display: none;
        text-align: right;
    }
    .header .dropMenu .linkBox {
        padding-bottom: 14px;
        position: relative;
    }
    .header .dropMenu .lLink {
        padding: 8px 0 0 22px;
        position: absolute;
        left: 0;
        top: 0;
        display: none;
    }
    .header .dropMenu .lLink li {
        padding-top: 13px;
        font-size: 13px;
        font-weight: 700;
        text-align: left;
    }
    .header .dropMenu .lLink li a {
        color: #000000;
        text-decoration: none;
    }
    .header .dropMenu .lLink .sub {
        margin-top: 28px;
    }
    .header .dropMenu .lLink .sub li {
        font-size: 10px;
        font-weight: 400;
    }
    .header .dropMenu .rLink {
        width: 49%;
        position: absolute;
        right: -50%;
        top: 0;
        filter: alpha(opacity=0);
        opacity: 0;
        background: url(../img/top/sp_bg03.png) repeat left top;
        background-size: 100% 100%;
        border-left: 3px solid #019740;
        background: #daebd1;
    }
    .header .dropMenu .rLink ul {
        padding: 20px 0 45px 25px;
    }
    .header .dropMenu .rLink li {
        padding-bottom: 16px;
        font-size: 11px;
        text-align: left;
    }
    .header .dropMenu .rLink li a {
        color: #000000;
        text-decoration: none;
    }
    .header .dropMenu .rLink li a img {
        margin-top: -2px;
        display: inline-block;
        vertical-align: middle;
    }
    .header .dropMenu .rLink li:first-child {
        font-size: 13px;
        font-style: italic;
    }
    .header .dropMenu .rLink li:first-child a {
        color: #019740;
    }
    .header .dropMenu .topLink {
        margin: 0;
        width: 100%;
        position: absolute;
        left: 0;
        bottom: 0;
        display: none;
        filter: alpha(opacity=0);
        opacity: 0;
        border-bottom: 1px solid #FFF;
        border-top: 1px solid #FFF;
    }
    .header .dropMenu .topLink .link01 a {
        background: url(../img/sp_btn01_bg.jpg) no-repeat left top;
        background-size: 100% 100%;
    }
    .header .dropMenu .topLink .link03 a {
        background: url(../img/sp_btn01_bg.jpg) no-repeat left top;
        background-size: 100% 100%;
    }
    .fixHeader {
        display: none;
    }
    #gNavi {
        display: none;
    }
    #gFooter {
        padding: 62px 0 12px;
        width: auto;
        position: relative;
    }
    #gFooter .sns p {
        /*		display: none;		*/
        text-align: center;
        float: none;
        margin: 0px 0px 7px;
        font-size: 15px;
    }
    #gFooter .pageTop {
        margin: 0;
        width: 100%;
        position: absolute;
        left: 0;
        top: 22px;
    }
    #gFooter .pageTop a {
        margin: 0 auto;
        display: block;
        width: 33px;
    }
    #gFooter .sns {
        margin-bottom: 24px;
    }
    #gFooter .sns ul {
        float: none;
        text-align: center;
    }
    #gFooter .sns li {
        margin: 0 12px;
        float: none;
        display: inline-block;
    }
    #gFooter .fBox ul {
        margin-bottom: 30px;
        width: auto;
        float: none;
        text-align: center;
    }
    #gFooter .fBox ul li {
        margin-right: 10px;
        padding: 0 0 0 13px;
        display: inline-block;
        float: none;
        font-size: 10px;
    }
    #gFooter .fBox ul li a:hover {
        color: #42B153;
    }
    #gFooter .fBox li a::after {
        display: none;
    }
    #gFooter .fBox p {
        width: auto;
        float: none;
        font-size: 8px;
        text-align: center;
    }
}
/*------------------------------------------------------------
	書式設定
------------------------------------------------------------*/
/* テキストの位置 */
.taLeft {
    text-align: left !important;
}
.taCenter {
    text-align: center !important;
}
.taRight {
    text-align: right !important;
}
.vaTop {
    vertical-align: top !important;
}
.vaMiddle {
    vertical-align: middle !important;
}
/* フォントの大きさ（プラス） */
.fsP1 {
    font-size: 1.08em !important;
}
.fsP2 {
    font-size: 1.16em !important;
}
.fsP3 {
    font-size: 1.24em !important;
}
.fsP4 {
    font-size: 1.32em !important;
}
.fsP5 {
    font-size: 1.4em !important;
}
/* フォントの大きさ（マイナス） */
.fsM1 {
    font-size: 0.92em !important;
}
.fsM2 {
    font-size: 0.84em !important;
}
.fsM3 {
    font-size: 0.76em !important;
}
.fsM4 {
    font-size: 0.68em !important;
}
.fsM5 {
    font-size: 0.6em !important;
}
/* フォントの太さ */
.fwNormal {
    font-weight: normal !important;
}
.fwBold {
    font-weight: bold !important;
}
/*------------------------------------------------------------
	微調整用クラス（※多用しないこと）
------------------------------------------------------------*/
.mt0 {
    margin-top: 0 !important;
}
.mb0 {
    margin-bottom: 0 !important;
}
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
* html .clearfix {
    zoom: 1;
}
*+html .clearfix {
    zoom: 1;
}
.clearfix:after {
    height: 0;
    visibility: hidden;
    content: ".";
    display: block;
    clear: both;
}
/*------------------------------------------------------------
	img
------------------------------------------------------------*/
img {
    vertical-align: top;
}
/*------------------------------------------------------------
	none
------------------------------------------------------------*/
.sp {
    display: none !important;
}
.fp {
    display: none !important;
}
.comLinkBox {
    display: none;
}
.topLink {
    display: none;
}
/*------------------------------------------------------------
	comBtn
------------------------------------------------------------*/
.comBtn01 {
    color: #FFF;
    font-size: 15px;
    text-align: center;
    position: relative;
    border-radius: 4px;
    behavior: url(/js/pie.htc);
    background-image: url(../img/btn_bg01.jpg);
}
.comBtn01 span {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    border-radius: 4px;
    -webkit-transition: all .3s;
    transition: all .3s;
    behavior: url(/js/pie.htc);
    background-image: url(../img/btn_bg01_over.jpg);
}
.comBtn01:hover span,
.comBtn02:hover span {
    opacity: 1.0;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.comBtn01 a,
.comBtn01 input,
.comBtn02 a,
.comBtn02 input {
    padding: 14px 0 13px;
    width: 100%;
    display: block;
    color: #FFF;
    line-height: 1.2;
    cursor: pointer;
    text-decoration: none;
    border: none;
    position: relative;
    background: url(../img/icon03.png) no-repeat 21px center;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.comBtn01 input,
.comBtn02 input {
    font-size: 15px;
}
.comBtn01 a:hover,
.comBtn01 input:hover,
.comBtn02 a:hover,
.comBtn02 input:hover {
    background: url(../img/icon03.png) no-repeat 35px center;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.comBtn02 input:disabled {
    background: url(../img/icon03.png) no-repeat 20px center;
    -webkit-transition: all .3s;
    transition: all .3s;
    padding: 12px 0px 12px;
}
/*.comBtn02 {
	color: #FFF;
	font-size: 15px;
	text-align: center;
	position: relative;
	border-radius: 4px;
	behavior: url(js/pie.htc);
	background-image: url(../img/btn_bg02.jpg);
}
.comBtn02 span {
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	border-radius: 4px;
	-webkit-transition: all .3s;
	transition: all .3s;
	behavior: url(/js/pie.htc);
	background-image: url(../img/btn_bg02_over.jpg);
}
*/
.comBtn02 {
    color: #FFF;
    font-size: 15px;
    text-align: center;
    position: relative;
    border-radius: 4px;
    behavior: url(/js/pie.htc);
    background-image: url(../img/btn_bg02.jpg);
}
.comBtn02 span {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    border-radius: 4px;
    -webkit-transition: all .3s;
    transition: all .3s;
    behavior: url(/js/pie.htc);
    background-image: url(../img/btn_bg02_over.jpg);
}
.comBtn02 input {
    font-size: 15px;
    padding: 12px 0px 11px;
}
.comBtn03 {
    margin: 0 auto;
    width: 202px;
    color: #FFF;
    font-size: 16px;
    text-align: center;
    position: relative;
    border-radius: 4px;
    behavior: url(/js/pie.htc);
    background-color: #009740;
}
.comBtn03 a,
.comBtn03 input {
    padding: 12px 0 11px;
    width: 100%;
    display: block;
    font-size: 16px;
    color: #FFF;
    line-height: 1.2;
    cursor: pointer;
    text-decoration: none;
    border: none;
    position: relative;
    background: url(../img/icon03.png) no-repeat 21px center;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.comBtn03 a:hover,
.comBtn03 input:hover {
    background: url(../img/icon03.png) no-repeat 35px center;
    -webkit-transition: all .3s;
    transition: all .3s;
    border-radius: 4px;
    behavior: url(/js/pie.htc);
    background-color: #42B153;
}
.comBtn04 {
    margin: 0 auto;
    width: 202px;
    font-size: 16px;
    font-weight: 700;
    position: relative;
    -webkit-transition: all .3s;
    transition: all .3s;
    background: #009740;
    border-radius: 4px;
    behavior: url(/js/pie.htc);
}
.comBtn04 a {
    padding: 11px 0 8px;
    position: relative;
    display: block;
    color: #FFF;
    text-align: center;
    -webkit-transition: all .3s;
    transition: all .3s;
    text-align: center;
    behavior: url(/js/pie.htc);
    background: url(../img/icon03.png) no-repeat 15px center;
}
.comBtn04:hover {
    background: #009740;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.comBtn04:hover a {
    background-position: 25px center;
    -webkit-transition: all .3s;
    transition: all .3s;
}
/*------------------------------------------------------------
	submit
------------------------------------------------------------*/
.submit {
    text-align: center;
}
.submit li {
    margin: 0 20px;
    display: inline-block;
    color: #FFF;
    font-size: 15px;
    text-align: center;
    position: relative;
    border-radius: 4px;
    behavior: url(/js/pie.htc);
    background-image: url(../img/btn_bg01.jpg);
}
.submit li span {
    width: 100%;
    height: 100%;
    display: block;
    cursor: pointer;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    border-radius: 4px;
    -webkit-transition: all .3s;
    transition: all .3s;
    behavior: url(/js/pie.htc);
    background-image: url(../img/btn_bg01_over.jpg);
}
.submit li:hover span,
.submit li:hover span {
    opacity: 1.0;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.submit li a,
.submit li input,
.submit li a,
.submit li input {
    padding: 12px 45px 11px;
    min-width: 162px;
    display: block;
    color: #FFF;
    cursor: pointer;
    text-decoration: none;
    border: none;
    position: relative;
    text-align: center;
    background: url(../img/icon03.png) no-repeat 21px center;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.submit li input {
    font-size: 15px;
}
.submit li a:hover,
.submit li input:hover {
    background: url(../img/icon03.png) no-repeat 35px center;
    -webkit-transition: all .3s;
    transition: all .3s;
}
/*退会申請中
.submit li a:hover,
.submit li input:disabled  {
	background: url(../img/icon03.png) no-repeat 20px center;
	-webkit-transition: all .3s;
	transition: all .3s;
}
*/
.submit .btn01 {
    background: #d6c8ed url(../img/btn_bg04.jpg) repeat-y right top;
}
.submit .btn01 span {
    background: url(../img/btn_bg02.jpg) repeat-y right top;
}
.submit .btn02 {
    background: #3A3A3A url(../img/btn_bg02.jpg) repeat-y right top;
}
.submit .btn02 span {
    background: #2B2B2B url(../img/btn_bg02_over.jpg) repeat-y right top;
}
.submit .btn04 {
    background: #009740 url(../img/btn_bg03.jpg) repeat-y right top;
    background-image: none;
    /* background-color: #3399FF; */
}
.submit .btn04 span {
    background: #009740 url(../img/btn_bg03_over.jpg) repeat-y right top;
    background-image: none;
    background-color: #009740;
}
.floatR {
    float: right !important;
}
/*------------------------------------------------------------
	headLine02
------------------------------------------------------------*/
#main .headLine02 {
    margin-bottom: 14px;
    font-size: 50px;
}
/*------------------------------------------------------------
	headLine03
------------------------------------------------------------*/
#main .headLine03 {
    margin-bottom: 28px;
    padding-bottom: 3px;
    font-size: 40px;
    line-height: 1;
    border-bottom: 5px solid #000;
}
/*------------------------------------------------------------
	headLine04
------------------------------------------------------------*/
#main .headLine04 {
    margin-bottom: 13px;
    padding-bottom: 6px;
    font-size: 18px;
    border-bottom: 2px solid #000;
}
#main .headLine08 {
    margin-bottom: 42px;
    font-size: 25px;
}
/*------------------------------------------------------------
	passport
------------------------------------------------------------*/
#main .passport {
    margin-bottom: 18px;
    border: 2px solid #D5A84C;
    border-top: none;
}
#main .passport .info {
    width: 247px;
    float: left;
}
#main .passport .info .num {
    padding: 14px 0;
    font-size: 13px;
    text-align: center;
    border-bottom: 1px solid #D5A84C;
}
#main .passport .info .name {
    padding: 17px 0 12px;
    font-size: 20px;
    text-align: center;
}
#main .passport .info .name span {
    margin-top: 5px;
    display: block;
    font-size: 13px;
}
#main .passport .info .date {
    font-size: 13px;
    text-align: center;
}
#main .passport .textBox {
    padding: 20px 0 28px 34px;
    width: 298px;
    float: right;
    border-left: 1px solid #D5A84C;
}
#main .passport .textBox p {
    padding: 3px 0 6px;
    font-size: 12px;
}
#main .passport .textBox .text {
    padding: 0;
    font-size: 16px;
}
#main .passport .textBox .text span {
    font-size: 24px;
    font-weight: 500;
}
#main .passport .textBox .stars {
    margin-top: 11px;
}
#main .passport .textBox .stars img {
    margin-right: 10px;
    width: 24px;
}
#main .passTtl {
    padding: 9px 0 4px;
    color: #FFF;
    font-size: 25px;
    font-weight: 700;
    text-align: center;
    background: url(../img/top/title_bg.jpg) no-repeat center top;
    border-left: 2px solid #D5A84C;
    border-right: 2px solid #D5A84C;
}
#main .memInfo {
    padding-bottom: 9px;
    width: 960px;
    float: left;
    border: 4px solid #CCC;
    margin-bottom:18px;
}
#main .memInfo .num {
    padding: 11px 0 9px;
    font-size: 13px;
    text-align: center;
    border-bottom: 1px solid #CCC;
}
#main .memInfo .name {
    padding: 14px 0 14px;
    text-align: center;
    font-size: 13px;
}
#main .memInfo .name span {
    margin-bottom: 3px;
    display: block;
    font-size: 20px;
}
#main .memInfo .date {
    font-size: 13px;
    text-align: center;
    border-bottom: 1px solid #CCC;
    padding-bottom: 17px;
}
#main .memInfo .join {
    font-size: 13px;
    text-align: center;
    padding-top: 11px;
    line-height: 200%;
}
/*------------------------------------------------------------
	more
------------------------------------------------------------*/
.more {
    margin: 26px 5px 0;
    font-size: 16px;
    font-weight: bold;
    text-align: right;
}
.more a {
    padding-left: 20px;
    display: inline-block;
    background: url(../img/icon08.gif) no-repeat left 7px;
}
/*------------------------------------------------------------
	banner
------------------------------------------------------------*/
#main .bannerPC {
    text-align: center;
    margin-bottom: 40px;
    margin-top: -15px;
}
#main .bannerPC a:hover {
    opacity: 0.5;
}
#main .bannerSP img {
    display: none;
}
/*------------------------------------------------------------
	tab
------------------------------------------------------------*/
#main .tabArea {
    margin-bottom: 58px;
}
#main .tabArea .tabPanel {
    border-bottom: 2px solid #CCC;
}
#main .tabArea .tabPanel ul {
    margin: 0 auto;
    width: 970px;
}
#main .tabArea .tabPanel li {
    width: 483px;
    float: left;
    font-size: 26px;
    font-weight: bold;
    text-align: center;
    border-right: 2px solid #CCC;
    border-top: 2px solid #CCC;
}
#main .tabArea .tabPanel li a {
    margin-bottom: -2px;
    padding: 14px 0 9px;
    display: block;
    color: #42B153;
    text-decoration: none;
    background: #F0F0F0 url(../img/top/tab_bg.jpg) repeat-x left bottom;
    border-bottom: 2px solid #CCC;
    color: #afafaf;
}
#main .tabArea .tabPanel li:first-child {
    width: 481px;
    border-left: 2px solid #CCC;
}
#main .tabArea .tabPanel .on a {
    background: #FFF;
    border-bottom: 2px solid #FFF;
    color: #42B153;
}
#main .tabArea .tabPanel li span {
    margin-left: 5px;
    font-size: 19px;
    font-weight: 500;
    font-style: italic;
}
#main .tabArea .tabPanel .on span {
    color: #0099FF;
}
#main .tabArea .tabBox {
    margin: 0 auto;
    padding: 35px 0 0;
    width: 970px;
}
#main .tabArea .tabBox .tab {
    display: none;
}
#main .tabArea .tabBox .tab:first-child {
    display: block;
}
#main .news {
    margin: 0 auto 58px;
    padding: 35px 0 0;
    width: 970px;
}
#main .tabBox .selectList {
    margin-bottom: 15px;
}
#main .tabBox .selectList>li {
    margin-right: 10px;
    width: 227px;
    float: left;
}
#main .tabBox .selectList li span {
    margin-bottom: 2px;
    display: block;
    color: #999;
    font-size: 12px;
    font-weight: 700;
}
#main .tabBox .imgBox {
    padding: 20px 0 22px;
    border-bottom: 1px solid #CCC;
}
#main .tabBox .imgBox a {
    display: block;
    overflow: hidden;
}
#main .tabBox .imgBox .photoBox {
    float: left;
}
#main .tabBox .imgBox .photoBox {
    border: 1px solid #CCC;
    -webkit-transition: all .5s;
    transition: all .5s;
}
#main .tabBox .imgBox a:hover .photoBox {
    border-color: #42B153;
    -webkit-transition: all .5s;
    transition: all .5s;
}
#main .tabBox .imgBox .textBox {
    width: 815px;
    float: right;
    text-align: left;
}
#main .tabBox .imgBox .textBox p {
    font-size: 16px;
    letter-spacing: 1px;
}
#main .tabBox .imgBox a .textBox .txt {
    font-weight: 400;
}
#main .tabBox .imgBox a:hover .textBox .txt {
    transition: .3s;
}
#main .tabBox .imgBox a:hover .textBox .txt {
    color: #42B153;
    text-decoration: underline;
    transition: .3s;
}
#main .tabBox .imgBox .textBox .date {
    margin-bottom: 19px;
    color: #7F7F7F;
    font-size: 11px;
    font-weight: bold;
    letter-spacing: 0;
}
#main .tabBox .imgBox .textBox .date span {
    margin-right: 10px;
    padding: 3px 4px 2px;
    width: 66px;
    display: inline-block;
    color: #FFF;
    font-size: 12px;
    position: relative;
    text-align: center;
    border-radius: 2px;
    behavior: url(js/pie.htc);
}
#main .tabBox .imgBox .textBox .date .release {
    background-color: #E53333;
}
#main .tabBox .imgBox .textBox .date .events,
#main .tabBox .imgBox .textBox .date .event {
    background-color: #C6A25F;
}
#main .tabBox .imgBox .textBox .date .live {
    background-color: #F06500;
}
#main .tabBox .imgBox .textBox .date .tv {
    background-color: #8600B0;
}
#main .tabBox .imgBox .textBox .date .radio {
    background-color: #00B736;
}
#main .tabBox .imgBox .textBox .date .magazine {
    background-color: #002DED;
}
#main .tabBox .imgBox .textBox .date .other {
    background-color: #42B153;
}
#main .tabBox .imgBox .textBox .date .all {
    background-color: #42B153;
}
#main .tabBox .imgBox .textBox .date .info {
    background-color: #42B153;
}
#main .tabBox .imgBox .textBox .date .apply {
    background-color: #42B153;
}
#main .tabBox .imgBox .textBox .date .ticket {
    background-color: #42B153;
}
#main .tabBox .imgBox .textBox .label {
    margin-bottom: 15px;
    color: #7F7F7F;
    font-size: 11px;
    letter-spacing: 0;
}
#main .tabBox .imgBox .textBox .label span {
    margin-right: 5px;
    padding: 1px 8px;
    display: inline-block;
    position: relative;
    border: 1px solid #CCC;
    border-radius: 1px;
    behavior: url(js/pie.htc);
}
/*------------------------------------------------------------
	comSelect
------------------------------------------------------------*/
#main .comSelect {
    background: #fff none repeat scroll 0 0;
    border: 1px solid #C2C2C2;
    cursor: pointer;
    font-size: 15px;
    height: 30px;
    line-height: 1.5;
    margin-right: 10px;
    position: relative;
    text-indent: 20px;
    width: 225px;
}
#main .comSelect .selectVal {
    background: #fff url(../img/arrow.gif) no-repeat scroll 10px center;
    height: 24px;
    padding: 5px 3px 1px 17px;
    color: #333;
    overflow: hidden;
}
#main .comSelect input {
    border: 0 none;
    font-size: 16px;
    line-height: 2;
    margin: 0;
}
#main .comSelect ul {
    padding: 15px 0 10px;
    display: none;
    background-color: #FFF;
    border: 1px solid #D5D5D5;
    left: -1px;
    top: 30px;
    position: absolute;
    width: 225px;
    z-index: 100;
}
#main .comSelect li {
    margin: 0 12px;
    padding: 9px 5px 5px 25px;
    text-indent: 0;
    border-top: 1px solid #CCC;
}
#main .comSelect li:first-child {
    border: none;
}
#main .comSelect li:hover {
    background-color: #CCC;
}
/*------------------------------------------------------------
	support
------------------------------------------------------------*/
.support {
    margin-bottom: 0;
}
.support .ttl {
    margin-bottom: 51px;
    /* margin-top: 50px; */
    background: #E3F0DC url(../img/top/bg04.jpg) no-repeat center top;
}
.support .ttl h2 {
    margin: 0 auto;
    width: 970px;
    color: #000000;
    font-size: 50px;
    line-height: 1.2;
    text-align: left;
}
.support .ttl h2 span {
    margin: -3px 0 0 20px;
    display: inline-block;
    font-size: 16px;
    font-weight: 300;
    vertical-align: middle;
}
.support .section {
    margin: 0 auto;
    width: 970px;
}
.support .imgBox {
    margin-bottom: 0;
}
.support .imgBox a {
    display: block;
    overflow: hidden;
    text-decoration: none;
}
.support .imgBox a:hover {
    filter: alpha(opacity=50);
    opacity: 0.5;
}
.support .imgBox .photoBox {
    margin-top: 1px;
    float: left;
}
.support .lNews dd a:hover {
    color: #42B153;
}
.support .imgBox .textBox {
    width: 182px;
    float: right;
}
.support .imgBox .textBox p {
    font-size: 16px;
    line-height: 1.7;
    text-align: left;
}
.support .imgBox .textBox .title {
    margin-bottom: 7px;
    color: #000;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.2;
    text-align: left;
}
.support .more {
    display: none;
}
.support .lNews {
    padding-right: 40px;
    width: 272px;
    float: left;
    border-right: 1px solid #CCC;
}
.support .lNews .imgBox p span {
    display: block;
}
.support .lNews dt {
    padding: 7px 0 0;
    color: #42B153;
    font-size: 12px;
    border-top: 1px solid #CCC;
    text-align: left;
}
.support .lNews dt:first-child {
    padding: 11px 0 0;
    border-top: 1px solid #42B153;
    text-align: left;
}
.support .lNews dd {
    padding-bottom: 8px;
    font-size: 12px;
    text-align: left;
}
.support .faq li a:hover {
    color: #42B153;
}
.support .lNews dd a {
    text-decoration: underline;
    position: relative;
    display: inline-block;
    transition: .3s;
    position: relativee;
    text-decoration: none;
    text-align: left;
}
.support .lNews dd a::after {
    position: absolute;
    bottom: .3em;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background-color: #42B153;
    opacity: 0;
    transition: .3s;
}
.support .lNews dd a:hover::after {
    bottom: 0;
    opacity: 1;
}
.support .faq {
    padding: 0 40px 0 25px;
    width: 267px;
    float: left;
    border-right: 1px solid #CCC;
}
.support .faq .imgBox p span {
    display: block;
}
.support .faq li {
    padding: 0 0 17px 24px;
    font-size: 12px;
    line-height: 1.6;
    background: url(../img/icon11.gif) no-repeat left top;
    text-align: left;
}
.support .faq li a {
    display: inline-block;
    position: relative;
    text-decoration: none;
    transition: .3s;
}
.support .faq li a::after {
    position: absolute;
    bottom: .3em;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background-color: #42B153;
    opacity: 0;
    transition: .3s;
}
.support .faq li a:hover::after {
    bottom: 0;
    opacity: 1;
}
.support .contact {
    width: 298px;
    float: right;
}
.support .contact .imgBox {
    margin-bottom: 20px;
}
.support .contact .textBox {
    width: 220px;
}
.support .contact .textBox p span {
    display: block;
}
.support .contact .textBox .title {
    line-height: 1.2;
}
.support .contact .comBtn01 {
    width: 201px;
    float: right;
    font-size: 16px;
    font-weight: 700;
    -webkit-transition: all .3s;
    transition: all .3s;
    background: url(../img/btn06_bg.jpg) repeat left top;
}
.support .contact .comBtn01 a {
    padding: 11px 0 8px;
    position: relative;
    -webkit-transition: all .3s;
    transition: all .3s;
    behavior: url(/js/pie.htc);
    border-radius: 4px;
    background-position: 15px center
}
.support .contact .comBtn01:hover {
    background: url(../img/btn06_bg_over.jpg) repeat left top;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.support .contact .comBtn01:hover a {
    background-position: 25px center;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.support02 {
    margin-bottom: 40px;
}
.support02 .imgBox {
    margin-bottom: 15px;
}
.support02 .contact .imgBox {
    margin-bottom: 69px;
}
.support02 .faq .imgBox {
    margin-bottom: 32px;
}
@media all and (min-width: 768px) {
    .support02 {
        margin-bottom: 56px;
    }
    .support02 .ttl {
        margin-bottom: 34px;
    }
    .support02 .section {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 0;
        width: 900px;
    }
    .support02 .faq,
    .support02 .contact {
        padding: 0;
        width: 385px;
        float: none;
        border: none;
    }
    .support02 .faq .imgBox,
    .support02 .contact .imgBox {
        margin-bottom: 58px;
    }
    .support02 .imgBox a {
        display: flex;
        align-items: flex-start;
    }
    .support02 .imgBox .photoBox {
        margin-top: 0;
        flex: 0 0 52px;
    }
    .support02 .imgBox .photoBox img {
        display: block;
        width: 52px;
        height: auto;
    }
    .support02 .imgBox .textBox {
        margin-left: 30px;
        width: auto;
        float: none;
        flex: 1 1 auto;
    }
    .support02 .contact .comBtn01 {
        display: none;
    }
    .topLink,
    .comLinkBox,
    #gFooter .sns,
    #gFooter .pageTop {
        display: none;
    }
    #gFooter {
        margin: 0 auto 24px;
        width: 900px;
    }
    #gFooter .fBox {
        display: grid;
        grid-template-columns: 300px 300px;
        justify-content: space-between;
        align-items: start;
    }
    #gFooter .fBox ul,
    #gFooter .fBox p {
        width: 300px;
        float: none;
    }
    #gFooter .fBox ul {
        display: flex;
        flex-wrap: wrap;
        margin: 0;
    }
    #gFooter .fBox li {
        margin-right: 10px;
        padding: 0 0 0 10px;
        font-size: 10px;
        line-height: 1.4;
    }
    #gFooter .fBox li:first-child {
        padding-left: 0;
    }
    #gFooter .fBox p {
        margin-top: 0;
        font-size: 10px;
        line-height: 1.4;
        text-align: right;
    }
}
/*------------------------------------------------------------
	headLine05
------------------------------------------------------------*/
#main .headLine05 {
    padding: 10px 0 6px;
}
#main .headLine05 h2 {
    margin-bottom: 9px;
    font-size: 40px;
    line-height: 1.1;
    border-bottom: 5px solid #000;
}
#main .headLine05 .and {
    /*	font-size: 35px;*/
    font-weight: 300;
}
#main .headLine05 .member {
    margin-left: 20px;
    color: #42B153;
    font-size: 20px;
    font-weight: 500;
    font-style: italic;
}
#main .headLine05 p {
    font-size: 14px;
}
/*------------------------------------------------------------
	headLine06
------------------------------------------------------------*/
.headLine06 {
    margin: 53px 0 6px;
    background: #E3F0DC url(../img/top/bg04.jpg) no-repeat center top;
}
.headLine06 h2 {
    margin: 0 auto;
    width: 970px;
    color: #000000;
    font-size: 50px;
    line-height: 1.2;
}
.headLine06 h2 span {
    margin: -3px 0 0 20px;
    display: inline-block;
    font-size: 16px;
    font-weight: 300;
    vertical-align: middle;
}
/*------------------------------------------------------------
	headLine07
------------------------------------------------------------*/
.headLine07 {
    margin-bottom: 25px;
    color: #000;
    font-size: 18px;
}
.headLine07 img {
    margin: 0 17px 0 0;
    vertical-align: middle;
}
/*------------------------------------------------------------
	comPageNavi
------------------------------------------------------------*/
#main .comPageNavi {
    margin-top: 55px;
    text-align: center;
}
#main .comPageNavi li {
    margin: 0 7px;
    display: inline;
    font-size: 15px;
}
#main .comPageNavi li a,
#main .comPageNavi li span {
    padding: 3px 10px;
    display: inline-block;
    text-decoration: none;
    background-color: #DFDFDF;
    margin-bottom: 40px;
}
#main .comPageNavi li a:hover,
#main .comPageNavi .on a,
#main .comPageNavi .on span {
    filter: alpha(opacity=50);
    opacity: 0.5;
}
#main .comPageNavi .on a:hover {
    filter: alpha(opacity=50);
    opacity: 0.5;
}
#main .comPageNavi li a img {
    display: inline-block;
    vertical-align: middle;
}
#main .comPageNavi .prev {
    padding: 3px 10px;
    display: inline-block;
    margin-right: 25px;
}
#main .comPageNavi .prev a {
    padding: 0;
    background: none;
}
#main .comPageNavi .prev img {
    vertical-align: middle;
}
#main .comPageNavi .next {
    padding: 3px 10px;
    display: inline-block;
    margin-left: 25px;
}
#main .comPageNavi .next a {
    padding: 0;
    background: none;
}
#main .comPageNavi .next img {
    vertical-align: middle;
}
#main .comPageNavi .back {
    margin: 0 40px;
}
#main .comPageNavi .back a {
    padding: 6px 20px;
}
/*------------------------------------------------------------
	idtogoBox
------------------------------------------------------------*/
#main .idtogoBox {
    padding: 44px 0 70px;
    margin: 0 auto;
    width: 970px;
}
#main .idtogoBox .headLine03 {
    margin-bottom: 69px;
}
#main .idtogoBox .headLine04 {
    margin-bottom: 18px;
    padding-bottom: 10px;
}
#main .idtogoBox h4 {
    margin-bottom: 29px;
    padding: 13px 25px;
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    background-color: #333;
}
#main .idtogoBox p {
    color: #333;
}
#main .idtogoBox .pTxt {
    margin-bottom: 54px;
    font-size: 14px;
    line-height: 1.8;
}
#main .idtogoBox .pTxt01 {
    margin-bottom: 46px;
}
#main .idtogoBox .txtUl {
    margin-bottom: 35px;
}
#main .idtogoBox .txtUl li {
    margin-top: 14px;
    color: #333;
    font-size: 15px;
    line-height: 1.8;
}
#main .idtogoBox .txtUl li:first-child {
    margin-top: 0;
}
#main .idtogoBox h5 {
    margin-bottom: 11px;
    color: #333;
    font-size: 20px;
}
#main .idtogoBox .bdBox {
    margin-bottom: 48px;
    height: 323px;
    overflow-y: scroll;
    padding: 9px 15px;
    border: 3px solid #CCC;
}
#main .idtogoBox .bdBox .pTitle {
    font-size: 12px;
    line-height: 1.7;
}
#main .idtogoBox .bdBox dl {
    color: #333;
    font-size: 12px;
    line-height: 1.7;
}
#main .idtogoBox .bdBox dt {
    margin-top: 20px;
}
#main .idtogoBox .bdBox dt:first-child {
    margin-top: 0;
}
#main .idtogoBox .btnUl {
    margin: 0 auto;
    width: 330px;
}
#main .idtogoBox .btnUl li {
    margin-top: 21px;
}
#main .idtogoBox .comBtn01 {
    width: 330px;
}
#main .idtogoBox .btnUl li:first-child {
    margin-top: 0;
}
/*------------------------------------------------------------
	privacypolicyBox
------------------------------------------------------------*/
#main .privacypolicyBox .headLine03 {
    margin-bottom: 18px;
}
#main .privacypolicyBox .pTitle {
    margin-bottom: 35px;
    font-size: 14px;
    font-weight: 700;
}
#main .privacypolicyBox .bdBox {
    padding: 6px 13px;
    border: 2px solid #CCC;
}
#main .privacypolicyBox .bdBox dt {
    padding-left: 14px;
    background: url(../img/icon41.gif) no-repeat left center;
}
/*------------------------------------------------------------
	notfoundBox
------------------------------------------------------------*/
#main .notfoundBox {
    padding: 110px 0 70px;
    margin: 0 auto;
    width: 970px;
}
#main .notfoundBox h2 {
    margin-bottom: 40px;
    padding-bottom: 27px;
    color: #333;
    font-size: 55px;
    font-weight: 700;
    text-align: center;
    /* background: url(../img/line01.gif) no-repeat center bottom; */
}
#main .notfoundBox p {
    font-size: 16px;
    font-weight: 500;
    text-align: center;
}
#main .notfoundBox .comBtn02 {
    margin: 40px auto 0;
    width: 300px;
}
.custom-checkbox,
.custom-radio {
    position: relative;
}
.custom-checkbox input,
.custom-radio input {
    position: absolute;
    left: 2px;
    top: 2px;
    margin: 0;
    filter: alpha(opacity=0);
    opacity: 0;
}
.custom-checkbox label,
.custom-radio label {
    display: block;
    position: relative;
    padding-left: 28px;
    line-height: 1;
    cursor: pointer;
}
.custom-checkbox label {
    background: url(../img/checkbox_bg01.png) no-repeat left center;
}
.custom-radio label {
    background: url(../img/radio_bg01.png) no-repeat left center;
}
.custom-checkbox label.checked {
    background: url(../img/checkbox_bg02.png) no-repeat left center;
}
.custom-radio label.checked {
    background: url(../img/radio_bg02.png) no-repeat left center;
}
@media all and (min-width: 0) and (max-width: 767px) {
    .pc {
        display: none !important;
    }
    .sp {
        display: block !important;
    }
    .fp {
        display: none !important;
    }
    /*------------------------------------------------------------
		headLine03
	------------------------------------------------------------*/
    #main .headLine03 {
        padding-bottom: 0;
        font-size: 28px;
        border-width: 3px;
    }
    /*------------------------------------------------------------
		headLine04
	------------------------------------------------------------*/
    #main .headLine04 {
        padding-bottom: 0;
        font-size: 14px;
    }
    #main .headLine08 {
        margin-bottom: 22px;
        font-size: 15px;
    }
    /*------------------------------------------------------------
		comBtn
	------------------------------------------------------------*/
    .comBtn01 {
        font-size: 11px;
        background: url(../img/sp_btn01_bg.jpg) no-repeat left top;
        background-size: 100% 100%;
        border-radius: 3px;
    }
    .comBtn01 span,
    .comBtn02 span {
        display: none;
    }
    .comBtn01 a,
    .comBtn01 input,
    .comBtn02 a,
    .comBtn02 input {
        padding: 12px 0 11px;
    }
    .comBtn01 input,
    .comBtn02 input {
        font-size: 12px;
    }
    .comBtn01 a,
    .comBtn01 a:hover,
    .comBtn01 input,
    .comBtn01 input:hover,
    .comBtn02 a,
    .comBtn02 a:hover,
    .comBtn02 input,
    .comBtn02 input:hover {
        background: url(../img/icon14.png) no-repeat 12px center;
        background-size: 6px 9px;
    }
    .comBtn02 input:disabled {
        background: transparent url("../img/icon14.png") no-repeat scroll 12px center / 6px 9px;
        transition: all 0.3s ease 0s;
    }
    .comBtn02 {
        font-size: 11px;
        background: url(../img/sp_btn02_bg.jpg) no-repeat left top;
        background-size: 100% 100%;
        border-radius: 3px;
    }
    .camera-label {
        background: url(../img/icon14.png) no-repeat 12px center;
        background-size: 6px 9px;
    }
    .comBtn03 {
        width: 46%;
        font-size: 11px;
        border-radius: 3px;
    }
    .comBtn03 a,
    .comBtn03 input {
        padding: 10px 0 9px;
        font-size: 11px;
        background-position: 10px center;
    }
    .comBtn03 a:hover,
    .comBtn03 input:hover {
        background-position: 10px center;
    }
    .comBtn04 {
        width: 50%;
        font-size: 11px;
    }
    .comBtn04:hover {
        background-color: #009740;
    }
    .comBtn04 a {
        padding: 7px 0px 6px;
        background-position: 10px center;
    }
    .comBtn04 a:hover {
        background-position: 10px center;
    }
    /*------------------------------------------------------------
		submit
	------------------------------------------------------------*/
    .submit {
        width: auto;
        display: flex;
        justify-content: center;
    }
    .submit li {
        margin: 0;
        display: block;
        width: 45%;
        font-size: 12px;
    }
    .submit li a,
    .submit li input {
        min-width: inherit;
        width: 100%;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
    }
    .submit li input {
        font-size: 14px;
    }
    .submit li span {
        display: none;
    }
    .submit li a:hover,
    .submit li input:hover,
    .submit li a:hover,
    .submit li input:hover {
        background: url(../img/icon03.png) no-repeat 21px center;
    }
    /*------------------------------------------------------------
		comLinkBox
	------------------------------------------------------------*/
    .comLinkBox {
        margin-top: 1px;
        padding: 34px 0 30px 25px;
        display: block;
        background: url(../img/top/sp_bg02.jpg) no-repeat left top;
        background-size: 100% 100%;
        background: #e3f0dc;
    }
    .comLinkBox .link01 {
        padding-top: 6px;
        float: left;
    }
    .comLinkBox .link01 li {
        padding-top: 13px;
        font-size: 13px;
        font-weight: 700;
        text-align: left;
    }
    .comLinkBox .link01 li a {
        color: #000000;
        text-decoration: none;
    }
    .comLinkBox .link01 .sub {
        margin-top: 28px;
    }
    .comLinkBox .link01 .sub li {
        font-size: 10px;
        font-weight: 400;
    }
    .comLinkBox .link02 {
        width: 54%;
        float: right;
        background: url(../img/top/sp_bg03.png) repeat left top;
        background-size: 100% 100%;
        border-left: 3px solid #019740;
        background: #daebd1;
    }
    .comLinkBox .link02 ul {
        padding: 20px 0 45px 25px;
    }
    .comLinkBox .link02 li {
        padding-bottom: 16px;
        font-size: 11px;
        text-align: left;
    }
    .comLinkBox .link02 li a {
        color: #000000;
        text-decoration: none;
    }
    .comLinkBox .link02 li a img {
        margin-top: -2px;
        display: inline-block;
        vertical-align: middle;
    }
    .comLinkBox .link02 li:first-child {
        font-size: 13px;
        font-style: italic;
        text-align: left;
    }
    .comLinkBox .link02 li:first-child a {
        color: #019740;
    }
    /*------------------------------------------------------------
		passport
	------------------------------------------------------------*/
    #main .passport {
        margin-bottom: 14px;
        border-width: 4px;
    }
    #main .passport .info {
        padding-bottom: 10px;
        width: auto;
        float: none;
    }
    #main .passport .info .num {
        padding: 12px 0 0;
        font-size: 10px;
        border-bottom: none;
    }
    #main .passport .info .num span {
        font-size: 12px;
    }
    #main .passport .info .name {
        padding: 8px 0 11px;
        font-size: 19px;
    }
    #main .passport .info .name span {
        margin-top: -2px;
        font-size: 9px;
    }
    #main .passport .info .date {
        font-size: 9px;
    }
    #main .passport .textBox {
        padding: 10px 20px 22px;
        width: auto;
        float: none;
        border-top: 2px solid #D5A84C;
        border-left: none;
    }
    #main .passport .textBox p {
        padding-bottom: 2px;
        font-size: 10px;
    }
    #main .passport .textBox .text {
        font-size: 10px;
    }
    #main .passport .textBox .text span {
        font-size: 19px;
    }
    #main .passport .textBox .stars {
        text-align: center;
    }
    #main .passport .textBox .stars img {
        margin: 0 2px;
        width: 18px;
    }
    #main .memInfo {
        margin-bottom: 22px;
        padding-bottom: 9px;
        width: auto;
        float: none;
        border: 3px solid #AAA;
    }
    #main .memInfo .num {
        padding: 11px 0 9px;
        font-size: 10px;
        text-align: center;
        border-bottom: 1px solid #AAA;
    }
    #main .memInfo .num span {
        font-size: 12px;
    }
    #main .memInfo .name {
        padding: 17px 0 12px;
        font-size: 9px;
        text-align: center;
    }
    #main .memInfo .name span {
        margin-bottom: 0;
        display: block;
        font-size: 19px;
    }
    #main .memInfo .date {
        font-size: 10px;
        text-align: center;
    }
    #main .memInfo .join {
        font-size: 10px;
        text-align: center;
        padding-top: 11px;
    }
    /*------------------------------------------------------------
		more
	------------------------------------------------------------*/
    .more {
        margin: 15px 20px 0;
    }
    .more a {
        font-size: 12px;
        background-position: left 4px;
    }
    /*------------------------------------------------------------
		tabArea
	------------------------------------------------------------*/
    #main .tabArea {
        margin-bottom: 30px;
    }
    #main .tabArea .tabPanel {
        border-bottom: none;
    }
    #main .tabArea .tabPanel ul {
        width: auto;
    }
    #main .tabArea .tabPanel li {
        width: 50%;
        font-size: 15px;
        line-height: 1.1;
        border: none;
        border-bottom: 1px solid #ccc !important;
    }
    #main .tabArea .tabPanel .on {
        border-bottom: none !important;
    }
    #main .tabArea .tabPanel li a {
        margin-bottom: 0;
        padding-bottom: 13px;
        border: none;
        border-top: 2px solid #CCC;
    }
    #main .tabArea .tabPanel li:first-child {
        width: 50%;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        border-left: none;
    }
    #main .tabArea .tabPanel li:first-child a {
        padding: 19px 0 22px;
        border-right: 1px solid #ccc;
    }
    #main .tabArea .tabPanel li span {
        display: block;
        font-size: 13px;
    }
    #main .tabArea .tabBox {
        padding: 15px 0 0;
        width: auto;
    }
    #main .news {
        margin-bottom: 30px;
        padding: 15px 23px 0;
        width: auto;
    }
    #main .tabBox .selectList {
        margin: 0 13px 20px;
    }
    #main .tabBox .selectList>li {
        margin: 0;
        padding-right: 2%;
        width: 48%;
    }
    #main .tabBox .selectList li span {
        font-size: 9px;
    }
    #main .tabBox .imgBox {
        padding: 15px 15px;
        /**	border-top: 1px solid #DEDEDE;
		border-bottom: none; **/
    }
    /**
	#main .tabBox .imgBox:nth-last-child(2) {
		border-bottom: 1px solid #DEDEDE;
	}
	**/
    #main .tabBox .imgBox .photoBox {
        width: 19%;
    }
    #main .tabBox .imgBox .photoBox img {
        width: 100%;
    }
    #main .tabBox .imgBox a:hover .photoBox {
        border: 1px solid #ccc;
    }
    #main .tabBox .imgBox .textBox {
        padding-left: 23%;
        width: auto;
        float: none;
    }
    #main .tabBox .imgBox .textBox p {
        font-size: 14px;
        line-height: 1.4;
        letter-spacing: 0;
    }
    #main .tabBox .imgBox a {
        text-decoration: none;
    }
    #main .tabBox .imgBox a:hover .textBox .txt {
        color: #42B153;
        text-decoration: none;
    }
    #main .tabBox .imgBox .textBox .date {
        margin-bottom: 4px;
        font-size: 12px;
    }
    #main .tabBox .imgBox .textBox .date span {
        padding: 2px 8px 1px;
        width: 50px;
        font-size: 9px;
    }
    #main .tabBox .imgBox .textBox .label {
        margin-bottom: 1px;
        font-size: 9px;
    }
    #main .tabBox .imgBox .textBox .label span {
        margin-bottom: 5px;
        padding: 2px 7px 0px;
    }
    /*------------------------------------------------------------
		comSelect
	------------------------------------------------------------*/
    #main .comSelect {
        height: 22px;
        width: 100%;
        font-size: 9px;
    }
    #main .comSelect .selectVal {
        padding-left: 0;
        height: 13px;
        background: url(../img/icon24.gif) no-repeat 10px 8px;
        background-size: 7px 6px;
    }
    #main .comSelect ul {
        padding: 7px 0;
        width: 100%;
        top: 22px;
    }
    #main .comSelect li {
        margin: 0 13px;
        padding: 10px 7px;
        text-indent: 0;
    }
    /*------------------------------------------------------------
		support
	------------------------------------------------------------*/
    .support,
    .support02 {
        margin-bottom: 50px;
    }
    .support .ttl {
        margin-bottom: 30px;
    }
    .support .ttl h2 {
        padding: 5px 25px;
        width: auto;
        font-size: 28px;
        position: relative;
    }
    .support .ttl h2 span {
        margin: 0;
        font-size: 11px;
        right: 18px;
        top: 16px;
        position: absolute;
    }
    .support .section {
        padding: 0 24px;
        width: auto;
    }
    .support .imgBox {
        margin: 0;
        padding-bottom: 15px;
        border-bottom: 1px solid #42B153;
    }
    .support02 .imgBox {
        border-bottom: none;
    }
    .support .imgBox .photoBox img {
        width: 44px;
    }
    .support .imgBox .textBox {
        padding-left: 55px;
        width: auto;
        float: none;
    }
    .support .imgBox .textBox p {
        margin-top: 6px;
        font-size: 12px;
        line-height: 1.5;
    }
    .support .imgBox .textBox .title {
        margin-bottom: 2px;
        font-size: 15px;
    }
    .support .more {
        margin: 10px 0 0;
        display: block;
        font-size: 12px;
    }
    .support .more a {
        padding-left: 12px;
        background: url(../img/icon16.gif) no-repeat left 5px;
        background-size: 8px 7px;
    }
    .support .lNews {
        padding: 0 0 22px;
        width: auto;
        height: auto !important;
        float: none;
        border: none;
    }
    .support .lNews .imgBox p span {
        display: inline;
    }
    .support .lNews dt {
        font-size: 9px;
    }
    .support .lNews dt:first-child {
        padding-top: 8px;
    }
    .support .lNews dd {
        padding-bottom: 5px;
        font-size: 11px;
    }
    .support .lNews dd a {
        text-decoration: underline;
    }
    .support .lNews dd a:hover {
        color: #42B153;
    }
    .support .lNews dd a::after {
        display: none;
    }
    .support .lNews dd:last-child {
        border-bottom: 1px solid #ccc;
    }
    .support .faq {
        padding: 0 0 15px;
        width: auto;
        height: auto !important;
        float: none;
        border: none;
    }
    .support .faq .imgBox {
        border-bottom: 1px solid #CDD7DD;
    }
    .support .faq .imgBox p span {
        display: inline;
    }
    .support .faq li {
        padding: 0 0 8px 0;
        font-size: 11px;
        background-size: 14px 14px;
        background-position: left 3px;
    }
    .support .faq li a {
        padding-left: 18px;
        text-decoration: underline;
    }
    .support .faq li a:hover {
        color: #42B153;
    }
    .support .faq li a::after {
        display: none;
    }
    .support .faq .more {
        margin-top: -13px;
    }
    .support .contact {
        padding: 0;
        width: auto;
        height: auto !important;
        float: none;
    }
    .support .contact .textBox p span {
        display: inline;
    }
    .support .contact .imgBox {
        padding-bottom: 0;
        border-bottom: none;
    }
    .support .contact .comBtn01 {
        margin: 0 auto;
        width: 60%;
        float: none;
        font-size: 13px;
    }
    .support .contact .comBtn01 a {
        padding: 10px 0px 9px;
    }
    .support .contact .comBtn01:hover {
        background-color: #3399ff;
    }
    .support .contact .comBtn01 a:hover {
        background-position: 15px center
    }
    .support02 .faq {
        margin-bottom: 15px;
    }
    .support02 .faq .imgBox {
        margin-bottom: 15px;
    }
    .support02 .contact .imgBox {
        margin-bottom: 20px;
    }
    .support .imgBox a:hover {
        filter: alpha(opacity=100);
        opacity: 5;
    }
    /*------------------------------------------------------------
		topLink
	------------------------------------------------------------*/
    .topLink {
        margin-bottom: 40px;
        display: block;
    }
    .topLink li {
        width: 50%;
        float: left;
        font-size: 13px;
        font-weight: 700;
        text-align: center;
    }
    .topLink li a {
        padding: 16px 0 14px;
        color: #FFF;
        display: block;
        text-decoration: none;
    }
    .topLink li a span {
        display: block;
        background: url(../img/icon14.png) no-repeat 13px center;
        background-size: 6px 9px;
    }
    .topLink .link01 a {
        background: url(../img/sp_btn02_bg.jpg) no-repeat left top;
        background-size: 100% 100%;
    }
    .topLink .link02 a {
        background: url(../img/sp_btn01_bg.jpg) no-repeat left top;
        background-size: 100% 100%;
    }
    .topLink .link03 a {
        background: url(../img/sp_btn03_bg.jpg) no-repeat left top;
        background-size: 100% 100%;
    }
    .topLink li:last-child a {
        border-left: 1px solid #FFF;
    }
    /*------------------------------------------------------------
		headLine05
	------------------------------------------------------------*/
    #main .headLine05 {
        padding: 20px 0 6px;
    }
    #main .headLine05 h2 {
        font-size: 24px;
        border-width: 3px;
    }
    #main .headLine05 .and {
        /*	font-size: 20px; */
    }
    #main .headLine05 .member {
        margin-left: 10px;
        font-size: 13px;
    }
    #main .headLine05 p {
        font-size: 10px;
    }
    /*------------------------------------------------------------
		headLine05
	------------------------------------------------------------*/
    .headLine06 {
        margin: 24px 0 0;
    }
    .headLine06 h2 {
        padding: 5px 25px;
        width: auto;
        font-size: 28px;
        position: relative;
    }
    .headLine06 h2 span {
        margin: 0;
        font-size: 11px;
        right: 18px;
        top: 16px;
        position: absolute;
    }
    /*------------------------------------------------------------
		headLine05
	------------------------------------------------------------*/
    .headLine07 {
        margin-bottom: 18px;
        font-size: 15px;
    }
    .headLine07 img {
        margin-right: 0px;
        width: 44px;
    }
    /*------------------------------------------------------------
		links
	------------------------------------------------------------*/
    #main .detailPhoto {
        padding: 15px 0 0;
        text-align: center;
    }
    #main .detailPhoto img {
        width: 185px;
    }
    #main .presentBox {
        margin: 22px 0 32px;
        padding-bottom: 15px;
        border-bottom: 3px solid #333;
    }
    #main .presentBox .label {
        margin-bottom: 20px;
        line-height: 1.2;
    }
    #main .presentBox .label span {
        padding: 2px 7px 1px;
        display: inline-block;
        color: #DE0000;
        font-size: 16px;
        border: 2px solid #DE0000;
    }
    #main .presentBox .date {
        margin-bottom: 9px;
        color: #7F7F7F;
        font-size: 16px;
        font-weight: 700;
    }
    #main .presentBox .date span {
        margin-left: 15px;
        padding: 1px 0px 0px;
        width: 75px;
        display: inline-block;
        color: #FFF;
        font-size: 14px;
        font-weight: 400;
        text-align: center;
        background-color: #E53333;
        border-radius: 2px;
    }
    #main .presentBox .title {
        font-size: 16px;
        font-weight: 700;
    }
    #main .text02 {
        margin-bottom: 18px;
        font-size: 16px;
        line-height: 1.8;
    }
    #main .acceptance {
        margin-bottom: 26px;
        color: #0066cc;
        font-size: 16px;
    }
    #main .acceptance dt {
        margin-bottom: 15px;
    }
    #main .textInner {
        margin-bottom: 45px;
    }
    #main .textInner p {
        margin-bottom: 25px;
        font-size: 14px;
        line-height: 1.8;
    }
    #main .noteBox {
        margin-bottom: 47px;
        padding: 30px 30px 25px 48px;
        border: 2px solid #CC0101;
    }
    #main .noteBox .title {
        margin-bottom: 35px;
        color: #C60A0A;
        font-size: 18px;
        font-weight: 700;
        text-align: center;
    }
    #main .noteBox .title img {
        margin: -3px 10px 0 0;
        vertical-align: middle;
    }
    #main .noteBox li {
        padding-bottom: 21px;
        color: #333;
        font-size: 14px;
        line-height: 1.5;
    }
    #main .btn03 {
        margin: 0 auto;
        width: 300px;
    }
    /*------------------------------------------------------------
		comPageNavi
	------------------------------------------------------------*/
    #main .comPageNavi {
        margin: 35px 0 0;
    }
    #main .comPageNavi li {
        margin: 0 5px;
        display: inline-block;
        font-size: 12px;
    }
    #main .comPageNavi .prev {
        margin: 0 5px 0 0;
        height: 24px;
        vertical-align: middle;
    }
    #main .comPageNavi .prev img {
        margin-top: 3px;
        vertical-align: middle;
    }
    #main .comPageNavi .next {
        margin: 0 0 0 5px;
        height: 24px;
        vertical-align: middle;
    }
    #main .comPageNavi .next img {
        margin-top: 3px;
        vertical-align: middle;
    }
    #main .comPageNavi li a .sp {
        display: inline-block !important;
    }
    #main .comPageNavi li a:hover {
        filter: alpha(opacity=100);
        opacity: 1;
    }
    #main .comPageNavi .back {
        margin: 0 35px;
    }
    #main .comPageNavi .back a {
        padding: 5px 20px;
    }
    /*------------------------------------------------------------
		idtogoBox
	------------------------------------------------------------*/
    #main .idtogoBox .spBreak {
        display: block;
    }
    #main .idtogoBox {
        padding: 30px 0 0;
        margin: 0 24px;
        width: auto;
    }
    #main .idtogoBox .headLine03 {
        margin-bottom: 34px;
    }
    #main .idtogoBox .headLine04 {
        margin-bottom: 12px;
        padding-bottom: 0;
    }
    #main .idtogoBox h4 {
        margin-bottom: 10px;
        padding: 7px 10px;
        font-size: 10px;
    }
    #main .idtogoBox .pTxt {
        margin-bottom: 21px;
        font-size: 11px;
    }
    #main .idtogoBox .pTxt01 {
        margin-bottom: 20px;
    }
    #main .idtogoBox .txtUl {
        margin-bottom: 20px;
    }
    #main .idtogoBox .txtUl li {
        margin-top: 0;
        font-size: 11px;
    }
    #main .idtogoBox h5 {
        margin-bottom: 5px;
        font-size: 12px;
    }
    #main .idtogoBox .bdBox {
        margin-bottom: 30px;
        height: 200px;
        padding: 3px 5px 5px;
        border: 2px solid #CCC;
    }
    #main .idtogoBox .bdBox .pTitle {
        font-size: 12px;
        line-height: 1.7;
    }
    #main .idtogoBox .bdBox dl {
        color: #333;
        font-size: 11px;
        line-height: 1.7;
    }
    #main .idtogoBox .bdBox dt {
        margin-top: 5px;
    }
    #main .idtogoBox .bdBox dt:first-child {
        margin-top: 0;
    }
    #main .idtogoBox .btnUl {
        width: 90%;
    }
    #main .idtogoBox .btnUl li {
        margin-top: 10px;
    }
    #main .idtogoBox .comBtn01 {
        width: 100%;
    }
    #main .idtogoBox .btnUl li:first-child {
        margin-top: 0;
    }
    /*------------------------------------------------------------
		privacypolicyBox
	------------------------------------------------------------*/
    #main .privacypolicyBox .headLine03 {
        margin-bottom: 22px;
    }
    #main .privacypolicyBox .pTitle {
        margin-bottom: 15px;
        font-size: 14px;
        font-weight: 400;
    }
    #main .privacypolicyBox .bdBox {
        padding: 0;
        border: 2px solid #CCC;
    }
    #main .privacypolicyBox .bdBox dt {
        margin-top: 10px;
        padding-left: 12px;
        background: url(../img/icon41.gif) no-repeat left center;
        background-size: 10px 10px;
    }
    /*------------------------------------------------------------
		notfoundBox
	------------------------------------------------------------*/
    #main .notfoundBox {
        padding: 60px 0 20px;
        margin: 0 24px;
        width: auto;
    }
    #main .notfoundBox h2 {
        margin-bottom: 17px;
        padding-bottom: 12px;
        font-size: 30px;
        background: url(../img/line01.gif) no-repeat center bottom;
        background-size: 45px 2px;
    }
    #main .notfoundBox p {
        font-size: 13px;
    }
    #main .notfoundBox .comBtn02 {
        margin: 60px auto 0;
        width: 80%;
    }
    #main .notfoundBox .comBtn02 a {
        font-size: 13px;
    }
    .custom-checkbox label {
        background: url(../img/sp_checkbox_bg01.png) no-repeat left center;
        background-size: 11px 11px;
    }
    .custom-radio label {
        background: url(../img/sp_radio_bg01.png) no-repeat left center;
        background-size: 10px 10px;
    }
    .custom-checkbox label.checked {
        background: url(../img/sp_checkbox_bg02.png) no-repeat left center;
        background-size: 11px 11px;
    }
    .custom-radio label.checked {
        background: url(../img/sp_radio_bg02.png) no-repeat left center;
        background-size: 10px 10px;
    }
    .custom-checkbox label,
    .custom-radio label {
        padding-left: 20px;
    }
}