@charset "utf-8";

/* レスポンシブ対応CSS
	201810
---------------------------------- */


/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}


/* 共通
---------------------------------- */

html{
    font-size: 1rem;
    -webkit-text-size-adjust: 100%;
}

body {
    font-family: 'ＭＳ Ｐゴシック', Verdana, Arial, sans-serif;
    font-size: 12px;
    font-size: 1rem;
    line-height:1;
    margin: 0;
    padding: 0;
}

#header {
    background-color: #DDDDDD;
    margin-bottom: 20px;
    width: 100%;
    text-align: center;
    font-size: 160%;
    padding: 8px 0px;
}

#footer {
    background-color: #DDDDDD;
    margin-top: 20px;
    padding: 8px 0px;
    text-align: center;
    width: 100%;
}

.text-small{
    display: inline-block;
    font-size: 11px;
    margin-top: 1rem;
}

/* レイアウト・テーブル 
----------------------------------*/

.custom_form {
    width: 100%;
    margin: 0;
    text-align: center;
    overflow: hidden;
}

.custom_form table {
    width: 95%;
	border-collapse: collapse;
	margin: 0 auto;
}

.custom_form table th,
.custom_form table td {
	display: block;
    width: 100%;
}

.custom_form table th {
    padding: 0.5rem 0;
    text-align: left;
    font-weight: normal;
	border-left: 5px solid #4D82CF;
	padding-left: 10px;
	vertical-align: middle;
}

.custom_form table td {
    padding: 1rem 0;
    text-align: left;
    font-size: 0.8rem;
    line-height: 1.5rem;
    position: relative;
}


.required {
	color: #FF6600;
	font-size: 0.7rem;
}
td label{
    font-size: 1rem;
}


@media screen and (min-width: 990px) {
	.custom_form table {
		width: 80%;
	}
    .custom_form table th,
    .custom_form table td {
		display: table-cell;
    }
	.custom_form table th {
		padding: 0;
		text-align: left;
		font-weight: normal;
		width: 30%;
		vertical-align: top;
		padding-top: 1rem;
		border-left: 0;
	}
	.custom_form table td {
		padding: 1rem 0;
		text-align: left;
		font-size: 0.8rem;
		line-height: 1.5rem;
		position: relative;
	}
}



/* フォーム項目
----------------------------------*/

.custom_form input,
.custom_form textarea {
	font-family: monospace, sans-serif;
}

.custom_form input[type="text"]{
    padding: 0.5rem 1rem;
    border: 2px solid #DDDDDD;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    color: #333;
    font-size: 1rem;
    -moz-box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.3);
    -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.3);
    box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.3);
    margin-bottom: 15px;
}
td input:last-child[type="text"]{
    margin-bottom: 0;
}

/* short */
.custom_form input#zip,
.custom_form input#age{
    width: 30%;
}

/* middle */
.custom_form input#name,
.custom_form input#kana,
.custom_form input#email,
.custom_form input#reEmail,
.custom_form input#tel1,
.custom_form input#tel2{
    width: 60%;
}

/* long */
.custom_form input#addr1,
.custom_form input#addr2,
.custom_form input#note{
    width: 90%;
}

.custom_form textarea{
    padding: 1em;
    border: 2px solid #DDD;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    -moz-box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.3);
    -webkit-box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.3);
    box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.3);
}
.custom_form textarea#free_textarea{
    width: 90%;
    height: 100px;
}
.custom_form textarea#agree_note{
    width: 90%;
    height: 100px;
}

.custom_form select {
    width: 60%;
	padding: 0.5rem 1rem;
	margin-right: 10px;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	position: relative;
    border: 2px solid #DDD;
	border-radius: 5px;
	background: #ffffff;
}
.custom_form select::-ms-expand {
    display: none;
}

/* 個人情報の取扱いについて */
#agree_detail_html{
    width: 75%;
    margin: 2rem auto;
    border: 2px solid #CCC;
    padding: 1rem;
}

/* チェックボックス */
#agree_form{
	text-align: center;
}


/* ボタン */

#agree_form input[type="submit"]{
    border-style: none;
	background: #3C82D5;
    margin: 0 auto 50px;
    padding: 0 2rem;
    vertical-align: middle;
    text-decoration: none;
    padding: 20px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    color: #fff;
    font-size: 1.1rem;
    text-align: center;
    display: inline-block;
    width: 200px;
}
#agree_form input:hover[type="submit"]{
    background-color: #1D4C99;
}
#agree_form input:disabled{
    background-color: #CCC;
}
#agree_form input:disabled:hover[type="submit"]{
    background-color: #CCC;
}


@media screen and (max-width: 960px) {
    td input[type="text"]{
        display: block;
    }
    td input[type="text"]#zip{
        display: inline-block;
        margin-bottom: 0.5rem;
    }
    td input[type="text"]#email,
    td input[type="text"]#reEmail{
        display: inline-block;
        margin-bottom: 0.5rem;
    }
    td input:first-child[type="text"]{
        margin-bottom: 0;
    }
    td input:last-child,
    td select{
        margin-bottom: 1rem;
    }
   /* short */
    .custom_form input#zip,
    .custom_form input#age{
     width: 40%;
    }
    /* medium */
    .custom_form input#email,
    .custom_form input#reEmail{
        width: 80%;
    }
    /* long */
    .custom_form input#tel,
    .custom_form input#name,
    .custom_form input#kana,
    .custom_form input#addr,
    .custom_form input#note{
       width: 100%;
    }
    .custom_form input[type="text"]{
      padding: 0.5rem;
    }
    .custom_form textarea#note,
    .custom_form textarea#agree_note{
       width: 100%;
    }
    th > br{
     display: none;
    }
	#agree_detail_html{
     width: 93%;
     padding: 0.5rem;
}
    #agree_form input[type="submit"]{
		width: auto;
	}
}


