@media only screen and (max-width: 767px) {
/** 入力画面以降ヘッダー **/
div.section span.tTtle {
    font-size:1rem !important;
}
div#header div#headerInner {
    width:100%;
}
div#header div#headerInner #logo {
    margin-bottom: 15px;
    margin-left: 15px;
}
div#gNav {
    float:left !important;
    width:100% !important;
}
div#gNav ul.pc_nav {
    display: none !important;
}
div#gNav ul.sp_nav {
    display: block !important;
}
div#pageBody{
    width: 100%;
}
div#content{
    width: 95%;
    margin:15px auto 0 auto;
}
div#gNav dl dd ul li {
    width: calc(100% / 3)!important;
}
td:has(input[name*="zip"]) {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    text-align: left !important;
}

td:has(input[name*="zip"])::before,
td:has(input[name*="zip"])::after {
    display: none !important;
}

td:has(input[name*="zip"]) > div {
    flex: 0 1 auto !important;
    display: flex !important;
    align-items: center !important;
}

input[name*="zip1"] {
    width: 3rem !important;
    margin-right: 0 !important;
}

input[name*="zip2"] {
    width: 4rem !important;
    margin-left: 0 !important;
}

td:has(input[name*="zip2"]) .ss_leftComment {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 6px !important;
    line-height: 1 !important;
}
#form_bill td:has(input[name*="zip"]) > ul {
    flex: 0 1 auto !important;
    display: flex !important;
    align-items: center !important;
}
/** login form **/
div.loginBox {
    height:auto !important;
    background-image: -moz-linear-gradient(top, #FDFDFD, #E9EBF7) !important;
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#FDFDFD), to(#E9EBF7)) !important;
    background-image: -webkit-linear-gradient(top, #FDFDFD, #E9EBF7) !important;
    background-image: -o-linear-gradient(top, #FDFDFD, #E9EBF7) !important;
    background-image: linear-gradient(to bottom, #FDFDFD, #E9EBF7) !important;
    background-repeat: repeat-x;
    border: 1px solid #dfdfdf !important;
}
div#content div.rgt {
    float: none !important;
    width: 100% !important;
    height:auto !important;
    margin: 0 auto !important;
}
div#content div.lft {
    float: none !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    height: auto !important;
}
div#content div.lft table td.loginbtn {
    padding:15px 0 !important;
    text-align: center !important;
}
div#content div.loginBox h3 {
    padding-left:0 !important;
}
div#content div.loginBox h3:nth-of-type(2){
    margin-top:15px;
    margin-bottom:15px;
}
div#content div.loginBox h3 span {
    font-size:1.2rem !important;
    line-height: 1.5rem;
}
.log_msg span {
    font-size: 100% !important;
}
div#content div.loginBox .log_msg {
    text-align: left;
    padding: 0 !important;
}
div#content div.lft table tr{
    display: block;
}
div#content div.lft table th{
    display: block;
    width: auto !important;
}
div#content div.lft table td {
    display: block;
}
/** form **/
div#content table tr:not(#seminar_id , #disnone , .disnone){
    display: block;
}
div#content table th {
    display: block;
    width: auto;
    background-color: #f9f9f9 !important;
}
div#content table td {
    display: block;
    background-color:#ffffff !important;
}
div#content .ss_input {
	display: block;
	float: none;
}
button, input, input[type="file"], select, textarea {
    width: 95%;
}
h3.sp_h3 {
    background:none !important;
    background-color: #EBEBEB !important;
    border: 1px solid #dfdfdf;
    padding: 8px 5px;
    border-radius: 2px;
    height:auto !important;    
}
h3.sp_h3 span{
    width: 90%;
    display: block;
    border-left: 3px solid #2D3B98;
    padding:0px 0px 0px 3px !important;
    font-weight:bold;
}
/* payment */
.ss_cardTable input{
    width:auto;
}
.ss_cardTable td {
    display:flow-root !important;
}
.ss_cardTable .ss_msg {
    clear: both;
}
.ss_cardTable td input#cardholder_email {
    width: 90% !important;
}
.ss_cardTable span.hy {
    display: none;
}

/** footer **/
div#footer div#footerInner{
    width: 95%;
}
div#footer div#footerInner ul#fNav {
    width: 100% !important;
}
div#footer div#footerInner ul#fNav li {
    float:none !important;
}
img {
  image-rendering: -webkit-optimize-contrast; /* Safari用 */
  image-rendering: crisp-edges;
}
}