@charset "utf-8";

* {
    margin: 0;
    padding: 0;
}

body {
    font: 16px/1.5 "メイリオ", Meiryo, "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #252525;
}

#column_area {
    display: flex;
    justify-content: space-between;
}

a {
    color: #646464;
    text-decoration: underline;
}

a:hover {
    color: #4c79ad;
    text-decoration: none;
}

a:active, a:focus {
    outline: 0;
}

iframe {
    max-width: 100%;
}

img {
    max-width: 100%;
    border: 0;
}

input[type="submit"],
input[type="button"] {
    -webkit-appearance: none;
}

.clear {
    clear: both;
}

/*************
全体
*************/
.wrap {
    margin: 0 auto;
    max-width: 912px;
}

#u_layer {
    background: #ededff;
}

html {
    overflow-y: scroll; /*スクロールを常に表示*/
}

.imgWidth {
    width: 100%;
}

/*************
/* ヘッダー
*************/
.global_notice {
    width: 100%;
    margin-top: 12px;
    margin-bottom: 10px;
    padding: 4px;
    text-align: center;
    color: #FFF;
    background-color: #df7c6b;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

#header {
    display: flex;
    justify-content: space-between;
    margin: 12px 0;
}

#header .subtitle {
    font-size: 15px;
    color: #333333;
}

#header .logo {
    width: 180px;
}

#submenu {
    position: relative;
    display: flex;
    flex: 1;
    justify-content: flex-end;
    align-items: flex-end;
    margin-right: 12px;
    padding-bottom: 5px;
    font-size: 16px;
}

.member-class {
    display: flex;
    align-items: baseline;
}

#submenu .member-class {
    justify-content: flex-end;
    margin-right: 12px;
}

.member-class.free {
    color: #4c79ad;
}

.member-class.payed {
    color: #df7c6b;
}

.member-class.vip{
    color: #d89a3c;
}

.member-class i {
    margin-right: 3px;
}

.member-class span {
    margin-left: 3px;
    font-size: 13px;
}

#submenu-dd {
    cursor: pointer;
}

#submenu-dd i {
    margin-left: 3px;
}

#submenu-body {
    position: absolute;
    top: 75px;
    display: none;
    flex-flow: column;
    justify-content: flex-end;
    border: 1px solid #aaa;
    border-radius: 5px;
    padding: 10px 20px 10px 20px;
    background: #fff;
    z-index: 1;
}

#submenu-body.show {
    display: flex;
}

#submenu-body li {
    text-align: right;
    list-style-type: none;
    line-height: 30px;
}

#submenu-body li.spacer {
    border-top: 1px solid #ddd;
    margin: 8px -8px 8px -8px;
}

#submenu-id {
    color: #646464;
}

#submenu-id i {
    margin-right: 0.5rem;
}

#drawer-menu.show {
    right: 0;
}

#drawer-menu.show #drawer-menu-button span {
    background: rgba(255, 255, 255, 0)
}

#drawer-menu.show #drawer-menu-button span:before {
    top: 0;
    transform: rotateZ(45deg);
}

#drawer-menu.show #drawer-menu-button span:after {
    top: 0;
    transform: rotateZ(-45deg);
}

#drawer-menu.show #drawer-menu-bg {
    background-color: rgba(0, 0, 0, 0.3);
    pointer-events: auto;
}

#drawer-menu {
    display: none;
    position: fixed;
    top: 0;
    right: -245px;
    z-index: 10;
    transition: right 200ms 0s;
}

#drawer-menu #drawer-menu-button {
    display: block;
    position: absolute;
    top: 26px;
    left: -76px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.8);
    cursor: pointer;
}

#drawer-menu #drawer-menu-button span {
    position: absolute;
    top: 24px;
    left: 13px;
    width: 24px;
    height: 3px;
    background: #252525;
    transition: all 200ms 0s;
}

#drawer-menu #drawer-menu-button span:before {
    content: '';
    position: absolute;
    top: -8px;
    left: 0;
    width: 24px;
    height: 3px;
    background: #252525;
    transition: all 200ms 0s;
}

#drawer-menu #drawer-menu-button span:after {
    content: '';
    position: absolute;
    top: 8px;
    left: 0;
    width: 24px;
    height: 3px;
    background: #252525;
    transition: all 200ms 0s;
}

#drawer-menu #drawer-menu-body {
    width: 245px;
    height: 100vh;
    padding: 23px 0;
    background: #4c79ad;
    box-sizing: border-box;
    overflow-y: scroll;
}

#drawer-menu #drawer-menu-body > div {
    margin: 0 14px 10px;
    padding: 4px 8px;
    background: #FFF;
    border-radius: 5px;
}

#drawer-menu #drawer-menu-body .member-class {
    justify-content: center;
}

#drawer-menu #drawer-menu-body .login-id {
    color: #646464;
    text-align: center;
    text-overflow: ellipsis;
    overflow: hidden;
}

#drawer-menu #drawer-menu-body ul {
    background: #4c79ad;
    list-style: none;
}

#drawer-menu #drawer-menu-body ul li a {
    display: block;
    padding: 10px 20px;
    font-size: 17px;
    color: #FFF;
    text-decoration: none;
}

#drawer-menu #drawer-menu-body ul li hr {
    margin: 10px;
    background-color: #FFF;
}

#drawer-menu #drawer-menu-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vh;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0);
    transition: background-color 200ms 0s;
    pointer-events: none;
    z-index: -1;
}

.clearfix:after {
    content: "";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.clearfix {
    display: inline-table;
}

/* Hides from IE-mac \*/
* html .clearfix {
    height: 1%;
}

.clearfix {
    display: block;
}

/* End hide from IE-mac */

.description {
    padding: 10px 0 10px 0;
    font-weight: bold;
}

/* header login */
.header_buttons {
    display: flex;
    align-items: center;
    margin-right: 3px;
}

.header_buttons > a {
    padding: 0.666rem 1.333rem;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    text-decoration: none;
    background-color: #d2dce8;
    color: #4c7aae;
    border: 1px solid #4c7aae;
}

.header_buttons > a:hover {
    opacity: 0.75;
}

.header_buttons > a:first-child {
    background-color: #f4d7d3;
    color: #d66d5a;
    border: 1px solid #d66d5a;
}

.header_buttons > a:not(:last-child) {
    margin-right: 1rem;
}

.header_buttons > a > i {
    font-size: 1.333rem;
    margin-bottom: 0.333rem;
}

.header_description {
    display: table;
    padding: 10px 0;
    margin-bottom: 20px;
    overflow: hidden;
    width: 912px;
    border-bottom: 1px solid #cdcdcd;
}

.header_description img {
    display: table-cell;
    vertical-align: middle;
    padding-left: 20px;
}

.header_description p {
    margin-left: 10px;
    display: table-cell;
    vertical-align: middle;
}

#notice {
    display: none;
    position: fixed;
    width: 40%;
    top: 12px;
    left: 30%;
    padding: 4px;
    text-align: center;
    color: #FFFFFF;
    background-color: rgba(51, 51, 51, 0.7);
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    z-index: 20;
}

.popupinfo_icon img{
    cursor: pointer;
    width: 16px;
}

.popupinfo_icon .textbox{
    display: none;
}

#popupinfo_div{
    display: none;
    position: absolute;
    background-color: black;
    color: white;
    border-radius: 5px;
    z-index: 100;
    padding: 5px 8px;
}

#popupinfo_div h5{
    font-size: 13px;
    margin: 5px 0;
}
#popupinfo_div p{
    font-size: 11px;
    text-align: left;
}
#popupinfo_div a{
    color: white;
}

/*************
/* トップナビゲーション
*************/
#topnavArea {
    background: #ffffff;
}

ul#topnav {
    margin: 0 auto;
    width: 912px;
}

ul#topnav li {
    float: left;
    list-style: none;
    width: 130px;
    text-indent: -9999px;
}

ul#topnav a {
    display: block;
    width: 130px;
    height: 48px;
}

.nav01 a {
    background: url(images/topnav01.png);
}

.nav02 a {
    background: url(images/topnav02.png);
}

.nav03 a {
    background: url(images/topnav03.png);
}

.nav04 a {
    background: url(images/topnav04.png);
}

.nav05 a {
    background: url(images/topnav05.png);
}

.nav06 a {
    background: url(images/topnav06.png);
}

.nav07 a {
    width: 134px;
    background: url(images/topnav07.png);
}

.nav08 a {
    background: url(images/topnav08.png);
}

.nav09 a {
    background: url(images/topnav09.png);
}

.nav01 a:hover, .nav01.current a,
.nav02 a:hover, .nav02.current a,
.nav03 a:hover, .nav03.current a,
.nav04 a:hover, .nav04.current a,
.nav05 a:hover, .nav05.current a,
.nav06 a:hover, .nav06.current a,
.nav07 a:hover, .nav07.current a,
.nav08 a:hover, .nav08.current a,
.nav09 a:hover, .nav09.current a {
    background-position: left bottom;
}

/*************
コンテナー
*************/
#container {
    min-height: 570px;
    margin-bottom: 10px;
}

/*************
パンクズ
*************/
#pankuzu {
    max-width: 910px;
}

#pankuzu li {
    display: inline-block;
    font-size: 80%;
    list-style-image: none;
    list-style-type: none;
    padding-right: 4px;
}

#pankuzu li a {
    background: url(./images/arrow.png) no-repeat center right;
    padding-right: 15px;
    text-decoration: none;
}

#pankuzu li a:hover {
    text-decoration: underline;
}

/*************
トップページ
*************/
#index_main {
    flex: 1;
    margin-right: 22px;
}

.index_main_box {
    overflow: hidden;
    margin-bottom: 30px;
}

.contentSub_ttl {
    padding-bottom: 4px;
    margin: 45px 0 15px 0;
    color: #313131;
    font-size: 20px;
}

.contentSub_ttl span {
    padding-left: 18px;
    border-left: 6px solid #4c79ad;
}

#information_board ul {
    list-style-image: url(./images/arrow.png);
    padding-left: 20px;
}

/* 当サイトについて */
#indexAbout_one,
#indexAbout_two {
    display: table;
    width: 308px;
    height: 345px;
    background: #ffffff;
    border: 1px solid #cdcdcd;
}

#indexAbout_one {
    float: left;
}

#indexAbout_two {
    float: right;
}

.indexAbout_left,
.indexAbout_right {
    display: table-cell;
    padding: 10px;
    background: #ffffff;
    vertical-align: top;
}

.indexAbout_right {
    border-left: 1px solid #d0d0d0;
}

.indexAbout_ttl {
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: bold;
}

/* ニュース */
#scroll {
    overflow-y: scroll;
    height: 240px;
    font-size: 14px;
}

#information ul {
    border: 1px solid #cdcdcd;
}

#information li {
    padding: 7px 20px;
    font-size: 12px;
    color: #525252;
    background: #f5f5f5;
}

#information ul li:nth-child(odd) {
    background: #ffffff;
}

#information li span {
    padding: 8px 6px;
    margin-right: 10px;
    color: #ffffff;
    background: #ecb054;
    display: inline-block;
}

#information dl dt {
    text-indent: 10px;
}

#information dl dd {
    text-indent: 10px;
    margin: 0 0 10px 0;
}

/* メルマ登録表記 */
#mailmagazineDeals {
    margin-bottom: 10px;
    text-align: center;
}

#mailmagazineBox {
    overflow: hidden;
    height: 208px;
    background: url(images/mailmagazine_box.png) no-repeat;
}

#mailmagazineForm {
    float: right;
    margin-top: 4px;
    margin-bottom: 5px;
    margin-right: 12px;
    background: #ffffff;
    border: 2px solid #e6e6e6;
    width: 261px;
    text-align: center;
}

#mailmagazineForm p {
    margin-top: 5px;
    margin-bottom: 8px;
    padding: 0 27px;
    font-size: 12px;
    text-align: left;
    line-height: 1.2;
}

#mailmagazineTable {
    margin: 0 auto;
    padding: 12px 0 10px 0;
    font-size: 12px;
    table-layout: fixed;
    word-wrap: break-word;
}

.mailmagazine_th {
    padding-top: 12px;
    width: 100px;
    font-size: 14px;
    text-align: left;
}

.mailmagazine_input {
    margin-top: 12px;
    padding: 0 5px;
    width: 130px;
    height: 23px;
    border: 1px solid #cdcdcd;
    background: #e9e9e9;
}

#mailmagazine_btn {
    margin: 15px auto 0 auto;
    text-align: center;
}

/*　サイドバーログイン */
#sideLogin_box {
    overflow: hidden;
    padding: 15px 20px;
    background: #ffffff;
    border: 1px solid #cdcdcd;
}

.sideLogin_ttl {
    text-align: center;
}

#sideLogin_table {
    margin: 0 auto;
    width: 100%;
    table-layout: fixed;
    word-wrap: break-word;
}

.sideLogin_th {
    padding-top: 10px;
    width: 84px;
    font-size: 14px;
    text-align: left;
}

.login_input {
    margin-top: 10px;
    padding: 0 5px;
    width: 130px;
    height: 23px;
    border: 1px solid #cdcdcd;
    background: #e9e9e9;
}

#sideLogin_save {
    margin: 10px 0;
    text-align: center;
}

#sideLogin_btn {
    margin: 0 auto;
    background: url(images/side_login_btn.png) no-repeat;
    width: 183px;
    height: 52px;
    font-size: 0;
    cursor: pointer;
}

#sideLogin_btn:hover {
    background-position: left bottom;
}

/* サイドバー */
.side_box {
    margin-bottom: 20px;
}

#topsidebar {
    width: 260px;
    padding: 20px 0;
}

#topsidebar p {
    margin-bottom: 10px;
}

#topsidebar h3 {
    color: #ffffff;
    text-align: center;
}

#topsidebar h3 a {
    color: #ffffff;
}

/*************
メインコンテンツ
*************/
#main {
    padding: 5px 0 20px 0;
    display: inline;
}

#main h1, #index_main h1 {
    padding: 0 10px 0 20px;
    line-height: 40px;
    font-size: 22px;
    font-weight: bold;
    color: #333333;
    background: url(./images/heading.png) no-repeat;
}

#main h2 {
    font-size: 20px;
    line-height: 30px;
    background: url(./images/h2.gif) no-repeat;
    padding-left: 15px;
    margin-top: 10px;
    letter-spacing: 0.2em;
    color: #ffffff;
}

#main p {
    padding: 5px 20px 5px 20px;
}

h4 {
	font-size: 18px;
	color: #4C79AD;
	margin-bottom: 15px;
	padding: 6px 10px;
}

.bordersolid {
	font-size: 18px;
	color: #4C79AD;
	margin-bottom: 15px;
	padding: 6px 10px;
	border: 1px solid #4C79AD;    
}

#main-p {
    border-style: solid;
    border-width: 0 1px 1px 1px;
}

/* 画像を右に回りこみ */
#main p.withImage {
    width: 690px;
    margin: 20px 0 10px 10px;
    padding: 5px 0;
}

img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

img.alignright {
    padding: 4px;
    margin: 0 0 2px 7px;
    display: inline;
}

img.alignleft {
    padding: 4px;
    margin: 0 7px 2px 0;
    display: inline;
}

.alignright {
    float: right;
}

.alignleft {
    float: left;
}

#main ul {
    list-style-image: url(./images/arrow.png);
}

#information_board ul {
    list-style-image: url(./images/arrow.png);
    padding-left: 20px;
}

/*************
メインコンテンツ 追加
*************/
#u_layer_box {
    padding-top: 20px;
    padding-bottom: 20px;
}

#container_new {
    margin-top: 20px;
    width: 100%;
}

.sidebar-container {
    display: flex;
}

#main_new {
    margin-bottom: 40px;
}

.sidebar-container #main_new {
    flex: 1;
    margin-right: 22px;
}

#sidebar_new {
    width: 260px;
}

.contentLayer_ttl {
    padding-bottom: 1px;
    margin-bottom: 40px;
    border-bottom: 2px solid #81b5eb;
    color: #4C79AD;
    font-size: 25px;
}

.contentLayer_ttl:after {
    content: '';
    display: block;
    padding-top: 1px;
    border-bottom: 2px solid #3277ac;
}

.layer_box {
    margin-bottom: 30px;
}

.layer_box p {
    font-size: 18px;
    margin: 1.2em 0 1.2em 0;
}

.next_back {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: -0.6em;
}

.next_back .back, .next_back .next {
    margin-top: 0.6em;
    padding: 0.6em 1.2em;
    font-size: 18px;
    color: #fff;
    background: #787878;
    border-radius: 5px;
}

.next_back .next {
    margin-left: auto;
    padding-left: 1.6em;
    text-align: right;
}

.next_back .back {
    padding-right: 1.6em;
}

.next_back .next:hover,
.next_back .back:hover {
    opacity: 0.75;
}

.next_back .next:after,
.next_back .back:before {
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
}

.next_back .next:after {
    content: "\f105";
    margin-left: 0.333em;
}

.next_back .back:before {
    content: "\f104";
    margin-right: 0.333em;
}

p.bold {
    font-size: 18px;
    margin: 2em 0 2em 0;
}

#main_new ol, #main_new ul {
    list-style-position: inside;
}

#main_new ul {
    list-style-image: url("./images/arrow.png");
}

#main_new ol > ul {
    margin-left: 1.5em;
}

/*************
下層ページ 追加
*************/
.btn_more a {
    padding: 10px 18px;
    color: #313131;
    font-size: 14px;
    background: #efefef;
    border: 1px solid #cbcbcb;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    text-align: center;
    width: 200px;
    text-decoration: none;
    float: right;
    margin-top: 20px;
}

.btn_more a:hover {
    color: #4c79ad;
    text-decoration: underline;
}

.tabMain {
    position: relative;
    margin-top: 105px;
}

.tab_menu {
    overflow: hidden;
    position: absolute;
    top: -65px;
    left: 0;
}

.tab_menu li {
    float: left;
    padding: 20px 30px;
    list-style: none;
    color: #4c79ad;
    text-decoration: underline;
    font-size: 17px;
    cursor: pointer;
}

.tab_menu li:hover {
    text-decoration: none;
}

.tab_menu li.tab_select {
    color: #313131;
    border-left: 1px solid #4c79ad;
    border-right: 1px solid #4c79ad;
    border-top: 1px solid #4c79ad;
    background: #ffffff;
    -webkit-border-top-right-radius: 5px;
    -moz-border-top-right-radius: 5px;
    border-top-right-radius: 5px;
    -webkit-border-top-left-radius: 5px;
    -moz-border-top-left-radius: 5px;
    border-top-left-radius: 5px;
}

.tab_content {
    padding: 10px 30px 5px 30px;
    border: 1px solid #4c79ad;
    background: #ffffff;
}

.tab_content h2 {
    display: none;
}

.tab_list p {
    position: relative;
    border-top: 1px solid #cecece;
}

.tab_list p:first-child {
    border-top: none;
}

.tab_list p a {
    display: block;
    padding: 28px 0;
    font-size: 15px;
}

.tab_list p span.textmin {
    font-size: 12px;
}

.tab_list p span.btn {
    padding: 10px 13px;
    color: #313131;
    font-size: 14px;
    background: #efefef;
    border: 1px solid #cbcbcb;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    text-align: center;
    text-decoration: none;
    position: absolute;
    top: 20px;
    right: 0;
}

.tab_list p span.btn:hover {
    color: #4c79ad;
    text-decoration: underline;
}

.hide {
    display: none;
}

/*************
サイドメニュー 追加
*************/
.side_ttl {
    padding: 20px 0;
    background: #4c79ad;
    font-size: 18px;
    text-align: center;
    color: #ffffff;
}

.sidemenu_new,
.sidemenu_icon_new {
    border: 1px solid #cdcdcd;
    font-size: 14px;
}

.sidemenu_new li,
.sidemenu_icon_new li {
    list-style: none;
    border-top: 1px dashed #cfcfcf;
    background: #ffffff;
}

.sidemenu_new li:first-child,
.sidemenu_icon_new li:first-child {
    border-top: none;
}

.sidemenu_new li a,
.sidemenu_icon_new li a {
    display: block;
    text-decoration: none;
}

.sidemenu_new li a {
    padding: 15px 5px 15px 25px;
    background: url(images/link_icon.png) no-repeat left 10px center;
}

.sidemenu_icon_new li a {
    display: table;
    padding: 15px 30px 15px 5px;
}

.sidemenu_icon_new li a span,
.sidemenu_icon_new li a img {
    display: table-cell;
    vertical-align: middle;
}

.sidemenu_new li a:hover,
.sidemenu_icon_new li a:hover {
    text-decoration: underline;
}

/* サイドメルマガ登録 */
.sideMailmagazine_ttl {
    text-align: center;
}

#sideMail_box {
    width: 100%;
    padding: 15px 0;
    background: #ffffff;
    border: 1px solid #cdcdcd;
}

#mailTable {
    display: flex;
    flex-flow: column;
}

#mailTable label {
    display: block;
    margin: auto;
    font-size: 14px;
    font-weight: bold;
}

.mail_input {
    display: block;
    margin-top: 5px;
    padding: 0 5px;
    width: 228px;
    height: 23px;
    border: 1px solid #cdcdcd;
    background: #e9e9e9;
}

#mail_btn {
    margin: 15px auto 0 auto;
    text-align: center;
}

/*************
サヤトレで分析できる銘柄一覧
*************/

.stock-list-table {
    width: 912px;;
}

.stock-list-table thead th {
    position: sticky;
    top: -1px;
}

.stock-list-table td, .stock-list-table th {
    padding: 0.333rem;
    border: 1px solid #cdcdcd;
}

.stock-list-table th {
    background: #4c79ad;
    color: #ffffff;
}

.stock-list-table td {
    background: #ffffff;
}

.stock-list-table td.center {
    width: 64px;
    font-weight: normal;
    text-align: center;
}

.stock-list-table td.right {
    text-align: right;
}

/*************
ログイン後TOP
*************/
#index_login {
    overflow: hidden;
    padding: 20px 0 20px 0;
}

#column_area_result {
    display: flex;
    justify-content: space-between;
}

/* リスト表示系 */
ol {
    padding: 10px 0;
}

/* フッター共通 */
.box {
    margin-bottom: 40px;
    line-height: 1.5;
}

.box_img {
    padding: 0 0 10px 0;
}

.last {
    margin-right: 0;
}

/* メインのリスト位置調節 */
#main ul, #main ol {
    margin-left: 40px;
}

#main li {
    margin-bottom: 3px;
}

/*************
左サイド
*************/
.sidemenu {
    padding: 10px 0;
}

.sidemenu ul {
    padding: 10px 0;
}

.sidemenu li {
    margin: 0 0 10px 0;
    list-style: none;
    border-bottom: 1px dashed #1793d9;
}

.sidemenu li a {
    background: url(./images/list.png) no-repeat 0 50%;
    display: block;
    padding-left: 15px;
}

.sidemenu li a:hover {
    background-position: 3px 50%;
}

/*************
/* ポジション管理
*************/
.position_box {
    margin-bottom: 40px;
}

.position_table_block {
    margin-top: 30px;
    overflow: hidden;
}

.position_table_margin_block-01 {
    overflow: hidden;
}

.position_table_margin_block-01 table {
    float: left;
    margin-right: 5px;
    height: 97px;
    border: 1px solid #5781b2;
}

.position_table_margin_block-01 table th {
    background: #6596cf;
    color: #ffffff;
    height: 25px;
    font-size: 17px;
}

.position_table_margin_block-01 table td {
    text-align: right;
}

.position_table_margin_block-01 .sign,
.position_table_margin_block-01 .code_box {
    border-right: 1px solid #b4b4b4;
}

.position_table_margin_block-01 .brand_box {
    font-size: 13px;
    padding: 4px 2px;
}

.position_table_margin-01 {
    width: 202px;
}

.position_table_margin-01 td input {
    padding: 5px 2px;
    margin-right: 6px;
    border: 1px solid #787878;
}

.position_table_margin-02 {
    width: 250px;
}

.position_table_margin-02 td input {
    padding: 5px 4px;
    margin-right: 2px;
    border: 1px solid #787878;
    width: 40px;
}

.position_table_margin-02 td input.mini_button {
    margin: 0;
    padding: 2px 0;
    background: #3d3d3d;
    border: 1px solid #5f5f5f;
    color: #ffffff;
    font-size: 13px;
    width: 33px;
}

.position_table_margin-03 {
    width: 104px;
}

.position_table_margin-03 td input {
    padding: 5px 7px;
    margin-right: 5px;
    border: 1px solid #787878;
    width: 50px;
}

.position_table_margin-04 td input {
    padding: 5px 7px;
    margin-right: 10px;
    border: 1px solid #787878;
}

.position_table_margin-04 td input.mini_button {
    margin-left: 5px;
    margin-right: 0px;
    padding: 2px 0;
    background: #3d3d3d;
    border: 1px solid #5f5f5f;
    color: #ffffff;
    font-size: 13px;
    width: 33px;
}

.position_table_margin-05 {
    width: 90px;
}

.position_table_margin-06 {
    margin-right: 0px !important;
    width: 102px;
}

.position_table_margin-06 td input {
    padding: 5px 2px;
    margin-right: 5px;
    border: 1px solid #787878;
}

.position_table_margin_block-02 {
    overflow: hidden;
    margin-top: 20px;
}

.position_table_margin_block-02 table {
    float: left;
    margin-right: 5px;
    height: 59px;
    width: 24.5%;
    border: 1px solid #5781b2;
}

.position_table_margin_block-02 table th {
    background: #6596cf;
    color: #ffffff;
    font-size: 17px;
}

.position_table_margin_block-02 table td {
    text-align: center;
}

.position_table_margin-07 td:first-child,
.position_table_margin-08 td:first-child {
    border-right: 1px solid #b4b4b4;
    width: 50%;
}

.position_table_margin-10 {
    margin-right: 0px !important;
}

.position_table_one {
    display: block;
    padding: 4px 6px;
    background: #ffffff;
    height: 26px;
}

.position_table_two {
    display: block;
    padding: 4px 6px;
    background: #f6f6f6;
    border-top: 1px solid #b4b4b4;
    height: 26px;
}

.position_table_one_no td {
    padding: 4px 6px;
    background: #ffffff;
}

.position_table_two_no td {
    padding: 4px 6px;
    background: #f6f6f6;
    border-top: 1px solid #b4b4b4;
}

.position_red_table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 16px;
    text-align: center;
}

.position_red_table, .position_red_table tr th, .position_red_table tr td {
    padding: 2px;
    border: 1px #b94d4d solid;
}

.position_red_table tr th {
    border-width: 0 0 1px 1px;
    background: #cf6565;
    color: #ffffff;
}

.position_red_table tr th a {
    color: #ffffff;
}

.position_red_table tr td {
    border-width: 0 0 1px 1px;
}

.position_red_table td input.mini_button {
    margin: 3px;
    padding: 2px 6px;
    background: #3d3d3d;
    border: 1px solid #5f5f5f;
    color: #ffffff;
    font-size: 13px;
}

.position_btn_edit {
    margin-top: 20px;
    text-align: center;
}

.position_btn_edit input.positon_btn_cansel {
    margin: 3px;
    padding: 5px 10px;
    background: #757575;
    border: 1px solid #656565;
    color: #ffffff;
    font-size: 13px;
}

.position_btn_edit input.positon_btn_load {
    margin: 3px;
    padding: 5px 10px;
    background: #3d3d3d;
    border: 1px solid #5f5f5f;
    color: #ffffff;
    font-size: 13px;
}

.position_btn {
    margin-top: 30px;
    text-align: center;
}

/*************
/* サヤトレユーザーの声
*************/

.none-background {
    background: none !important;
}

.order-button {
    padding: 30px;
    text-align: center;
}

.a-customer > div {
    display: inline-block;
    vertical-align: middle;
}

.man {
    width: 203px;
    background-repeat: no-repeat;
    margin: 20px 10px;
}

.man p, .man2 p {
    color: #003366;
    font-weight: bold;
    text-align: center;
}

.manpic {
    text-align: center;
    margin-top: 40px;
}

.manpic img {
    width: 100px;
}

.man2 {
    width: 203px;
    background-repeat: no-repeat;
    margin: 50px 10px 20px 0;
}

.entrystepexet2 {
    margin-top: 60px;
    background: #e0f0f5;
    width: 630px;
    min-height: 116px;
    overflow: hidden;
    border: 1px solid #7ecef4;
    padding: 7px;
    margin-left: 30px;
    margin-bottom: 10px;
}

/*************
/* フッター
*************/
#footer {
    padding-top: 50px;
    border-top: 1px solid #cdcdcd;
    text-align: center;
    width: 100%;
}

#footer ul {
    display: flex;
    flex-flow: wrap;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5em;
    list-style: none;
}

#footer ul:first-of-type {
    margin-bottom: 0;
}

#footer ul li {
    display: flex;
    align-items: center;
    justify-content: center;
}

#footer ul li:not(:last-of-type):after {
    display: inline-block;
    content: '';
    width: 1px;
    height: 1em;
    margin: 0 0.5em;
    background: #252525;
}

#footer p {
    font-size: 13px;
}

* html #footer .inner {
    height: 1%;
}

address {
    display: block;
    margin-top: 30px;
    padding: 17px 0;
    text-align: center;
    font-style: normal;
    font-size: 14px;
    background: #4c79ad;
    color: #ffffff;
}

.scroll-top {
    display: none;
    position: fixed;
    bottom: 26px;
    right: 26px;
    width: 50px;
    height: 50px;
    font-size: 28px;
    color: #FFF;
    background: rgba(76, 121, 173, 0.8);
    border-radius: 50%;
    cursor: pointer;
}

.scroll-top:hover,
.scroll-top:active,
.scroll-top:focus {
    color: #FFF;
}

.scroll-top i {
    margin-top: 10px;
}

.basic_button {
    padding: 5px 15px;
}

/*************
/* 独自に追加
*************/
.profile {
    float: right;
}

dd {
    margin-bottom: 20px;
    background-color: #EFEFEF;
    padding: 10px;
}

.btn, .backbtn {
    cursor: pointer;
}

/* テーブル */
table {
    border-collapse: collapse;
}

.ta1, ta2 {
    width: 100%;
}

.ta1, .ta1 td, .ta1 th,
.ta2, .ta2 td, .ta2 th {
    border: 1px solid #999999;
}

.ta1 td, .ta1 th,
.ta2 td, .ta2 th {
    padding: 10px 20px;
}

.ta1 th,
.ta2 th {
    background-color: #f5f5f5;
    text-align: center;
    word-break: keep-all;
}

.ta1 td,
.ta2 td {
    background-color: #FFF;
}

input.form {
    font-size: 1.2rem;
    margin: 0 0 0 10px;
    padding: 5px;
    border-radius: 5px;
}

.ta2 input, select {
    padding: 5px;
}

/* 文章を太字に */
.bold {
    font-weight: bold;
}

/* よくある質問 */
dl.faqs dt {
    margin-left: 11px;
    padding: 10px 0;
    cursor: pointer;
    text-decoration: underline;
}

dl.faqs dt:hover {
    color: #4c79ad;
    text-decoration: none;
}

dl.faqs dt:before {
    content: 'Q';
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    margin-right: 5px;
    color: #FFF;
    font-weight: bold;
    background: #4c79ad;
    border-radius: 5px;
    text-decoration: none;
}

dl.faqs dd {
    display: none;
    background-color: #FFFFFF;
    border: 1px solid #cdcdcd;
    border-radius: 5px;
}

dl.faqs dd:before {
    content: 'A';
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    color: #FFF;
    font-weight: bold;
    background: #df7c6b;
    border-radius: 5px;
}

/* 画像をロールオーバーさせるタグ */
a:hover img.css-hover {
    opacity: 0.75;
    -moz-opacity: 0.75; /* Firefox */
    filter: alpha(opacity=75); /* IE6/7 */
    -ms-filter: "alpha(opacity=75)"; /* IE8 */
}

.center {
    text-align: center;
    font-weight: bold;
}

/*************
/* 新規会員お申込み
*************/
.sp_br_block {
    display: none;
}

#form_box p {
    font-size: 16px;
    margin: 1em 0 1em 0;
}

.form_border_title {
    font-size: 18px;
}

.form_border_title span {
    border-left: 6px solid #4c79ad;
    padding-left: 10px;
}

.form_plan_list {
    overflow: hidden;
    margin: 15px auto 40px;
    width: 90%;
}

.form_plan_list dl {
    float: left;
    margin-right: 2%;
    border: 2px solid #c4ceef;
    background: #ffffff;
    text-align: center;
    font-weight: bold;
    width: 31.5%;
}

.form_plan_list dl.last {
    margin-right: 0;
}

.form_plan_list dl dt {
    font-size: 21px;
    color: #647cc5;
    padding: 15px;
    border-bottom: 1px solid #d1d1d1;
    width: 80%;
    margin: 0 auto;
}

.form_plan_list dl dd {
    font-size: 15px;
    padding: 18px 15px;
    margin-bottom: 0;
    background: #ffffff;
}

.form_plan_list dl.last dd {
    padding: 18px 15px;
}

#form_plan_text {
    margin-left: 0;
    margin-top: 10px;
    list-style-image: none !important;
    list-style-type: none;
    font-size: 14px;
}

.form_color_red {
    color: #c76858;
}

.form_blue_table {
    width: 100%;
    /*margin-top: 20px;*/
    margin-bottom: 40px;
    border-top: 1px solid #4c79ad;
    border-bottom: 1px solid #4c79ad;
}

.form_blue_table th {
    padding: 20px;
    width: 25%;
    color: #ffffff;
    text-align: left;
    background: #4c79ad;
    border-left: 1px solid #4c79ad;
    border-bottom: 1px solid #cecece;
    box-sizing: border-box;
}

.form_blue_table th .form_required {
    padding: 3px 7px;
    margin-right: 10px;
    color: #c76858;
    font-size: 12px;
    background: #ffffff;
    vertical-align: middle;
}

.form_blue_table tr:last-of-type th,
.form_blue_table tr:last-of-type td {
    border-bottom: 1px solid #4c79ad;
}

.form_display {
    display: inline-block;
    vertical-align: top;
}

.form_blue_table td {
    padding: 20px;
    width: 75%;
    background: #ffffff;
    border-right: 1px solid #4c79ad;
    border-bottom: 1px solid #cecece;
    box-sizing: border-box;
}

.form_blue_table td input {
    margin-right: 0;
    margin-left: 0;
    border: 1px solid #a7a7a7;
    border-radius: 0;
    background: #f0f0ff;
    padding: 18px 15px;
    font-size: 14px;
    box-sizing: border-box;
}

.form_blue_table td textarea {
    margin-top: 5px;
    padding: 15px 12px;
    border: 1px solid #a7a7a7;
    background: #f0f0ff;
    box-sizing: border-box;
}

.form_blue_table td input[type=radio],
.form_blue_table td input[type=checkbox] {
    display: none;
}

.payments {
    width: 100%;
    max-width: 700px;
    margin: 0 auto 30px;
    border: 1px solid #4c79ad;
}

.payments thead th {
    border-left: 1px solid #cecece;
    border-bottom: 1px solid #cecece;
}

.payments th {
    padding: 1em;
    color: #FFF;
    background: #4c79ad;
    border: 1px solid #cecece;
}

.payments td {
    padding: 1em;
    background: #ffffff;
    border: 1px solid #cecece;
}

.payments em {
    display: block;
    color: #c76858;
    font-style: normal;
}

.radio {
    box-sizing: border-box;
    -webkit-transition: background-color 0.2s linear;
    transition: background-color 0.2s linear;
    position: relative;
    display: flex;
    align-items: center;
    padding: 6px 12px 6px 42px;
    border-radius: 8px;
    vertical-align: middle;
    cursor: pointer;
}

.checkbox {
    box-sizing: border-box;
    -webkit-transition: background-color 0.2s linear;
    transition: background-color 0.2s linear;
    position: relative;
    display: inline-block;
    padding: 6px 0 6px 42px;
    border-radius: 8px;
    vertical-align: middle;
    cursor: pointer;
}

.radio:hover:after, .checkbox:hover:after {
    border-color: #22bbe6;
}

.radio:after {
    -webkit-transition: border-color 0.2s linear;
    transition: border-color 0.2s linear;
    position: absolute;
    top: 45%;
    left: 10px;
    display: block;
    margin-top: -10px;
    width: 20px;
    height: 20px;
    border: 2px solid #bbb;
    border-radius: 50px;
    content: '';
}

.checkbox:after {
    -webkit-transition: border-color 0.2s linear;
    transition: border-color 0.2s linear;
    position: absolute;
    top: 45%;
    left: 10px;
    display: block;
    margin-top: -10px;
    width: 20px;
    height: 20px;
    border: 2px solid #bbb;
    border-radius: 6px;
    content: '';
}

.radio:before {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
    position: absolute;
    top: 47%;
    left: 16px;
    display: block;
    margin-top: -5px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #22bbe6;
    content: '';
    opacity: 0;
}

.form_blue_table td input[type=radio]:checked + .radio:before {
    opacity: 1;
}

.checkbox:before {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
    position: absolute;
    top: 50%;
    left: 19px;
    display: block;
    margin-top: -7px;
    width: 5px;
    height: 9px;
    border-right: 3px solid #22bbe6;
    border-bottom: 3px solid #22bbe6;
    content: '';
    opacity: 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.radio > span {
    margin-left: 1em;
    color: #c76858;
}

.radio .recommend {
    padding: 4px 6px;
    color: #FFF;
    background: #c76858;
    font-size: 10px;
    font-weight: bold;
}

.form_blue_table td input[type=checkbox]:checked + .checkbox:before {
    opacity: 1;
}

.form_sub_title_line {
    display: block;
    position: relative;
    margin-bottom: 6px;
    background: #ffffff;
    font-size: 16px;
}

.form_sub_title_line-middle {
    display: block;
    position: relative;
    margin-bottom: 6px;
    background: #ffffff;
    font-size: 20px;
}

.form_sub_title_line:after {
    content: "";
    display: block;
    border-top: solid 2px #4c79ad;
    width: 73%;
    height: 1px;
    position: absolute;
    top: 45%;
    right: 0;
    z-index: 1;
}

.form_sub_title_line-middle:after {
    content: "";
    display: block;
    border-top: solid 2px #4c79ad;
    width: 52%;
    height: 1px;
    position: absolute;
    top: 45%;
    right: 0;
    z-index: 1;
}

.form_sub_text-01 {
    margin: 15px 0 10px 0;
}

.form_width_30 {
    width: 30%;
}

.form_width_50 {
    width: 50%;
}

.form_width_max {
    width: 100%;
}

.form_tabele_span {
    margin-left: 10px;
}

.form_comp_text {
    font-size: 13px !important;
    text-align: center;
    color: #525252;
}

.form_comp_text:before {
    font-family: 'Font Awesome 5 Free';
    font-weight: bold;
    content: '\f023';
    margin-right: 5px;
}

.form_rule_box {
    overflow-y: auto;
    padding: 10px;
    height: 140px;
    font-size: 13px;
    background: #f0f0ff;
    border: 1px solid #a7a7a7;
    width: 100%;
    box-sizing: border-box;
}

.form_blue_table td input.form_two_box {
    margin: 10px 30px 10px 0;
}

.form_btn_confirm {
    position: relative;
    text-align: center;
}

.form_btn_confirm:after {
    position: absolute;
    content: '';
    top: calc(50% - 3px);
    left: calc(50% + calc(322px / 2) - 15px);
    width: 5px;
    height: 5px;
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    transform: rotate(45deg);
}

.form_btn_confirm [type="submit"] {
    width: 332px;
    height: 69px;
    padding-right: 1em;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 24px;
    font-weight: bold;
    color: #FFF;
    background: linear-gradient(180deg, #ea8c7b, #b14b3a);
    border: 1px solid #cf6d5c;
    cursor: pointer;
}

/*************
/* 会員登録完了
*************/
#thanks_box {
    overflow: hidden;
    margin-bottom: 40px;
}

.thanks_content {
    margin-top: 40px;
}

.thanks_img_stop {
    text-align: center;
}

.thanks_content_text {
    margin-top: 10px;
    font-weight: bold;
}

.thanks_content_plan {
    display: flex;
    margin: 15px auto 45px;
}

.thanks_content_plan dl {
    width: 31.5%;
    margin-right: 1%;
    border: 2px solid #c4ceef;
    background: #ffffff;
    text-align: center;
    font-weight: bold;
}

.thanks_content_plan dl dt {
    font-size: 16px;
    color: #647cc5;
    padding: 15px;
    border-bottom: 1px solid #d1d1d1;
    margin: 0 auto;
    text-align: center;
}

.thanks_content_plan dl dd {
    font-size: 15px;
    padding: 20px 5px 10px 5px;
    margin-bottom: 0;
    background: #ffffff;
}

.thanks_content_plan dl.last {
    margin-right: 0;
}

.thanks_content_direct {
    margin-top: 20px;
    overflow: hidden;
}

.thanks_content_direct dl {
    display: table;
    overflow: hidden;
    width: 436px;
}

.thanks_content_direct dl:not(:last-of-type) {
    margin-bottom: 20px;
}

.thanks_content_direct dl dt {
    display: table-cell;
    vertical-align: middle;
    padding: 18px;
    background: #4c79ad;
    width: 154px;
    color: #ffffff;
    font-size: 18px;
    box-sizing: border-box;
}

.thanks_content_direct dl dd {
    display: table-cell;
    vertical-align: middle;
    padding: 18px;
    border: 1px solid #4c79ad;
    color: #be3720;
    font-size: 18px;
}

.thanks_content_table {
    margin-top: 20px;
    width: 100%;
    border: 1px solid #4c79ad;
}

.thanks_content_table th {
    padding: 20px;
    background: #616161;
    font-size: 18px;
    color: #ffffff;
    text-align: left;
    border-bottom: 1px solid #cecece;
    width: 25%;
    box-sizing: border-box;
}

.thanks_content_table th.last {
    border-bottom: none;
}

.thanks_content_table td {
    padding: 20px;
    background: #ffffff;
    font-size: 18px;
    color: #252525;
    border-bottom: 1px solid #cecece;
    width: 75%;
    box-sizing: border-box;
}

.thanks_content_table td.last {
    border-bottom: none;
}

.thanks_img_mail {
    width: 750px;
    margin: 50px auto 20px;
}

.thanks_img_mail img {
    margin-bottom: 20px;
}

.thanks_img_mail p:not(:last-of-type) {
    margin-bottom: 1em;
}

/**********************************************
 SP対応
 **********************************************/

@media screen and (max-width: 930px) {
    a {
        word-break: break-all;
    }

    .global_notice {
        width: auto;
        margin: 12px 10px 10px 10px;
    }

    #topnavArea {
        display: none;
    }

    #header {
        margin: 12px 0 4px 12px;
    }

    #headerLogin {
        display: none;
    }

    #pankuzu {
        margin-left: 10px;
    }

    #container_new {
        padding: 0 10px;
        box-sizing: border-box;
    }

    #submenu {
        display: none;
    }

    #drawer-menu {
        display: block;
    }

    .stock-list-table-wrapper {
        overflow: auto;
    }

    .tabMain {
        margin-top: 0;
    }

    .tab_menu {
        display: none;
    }

    .tab_content {
        padding: 0;
        border: none;
        background: initial;
    }

    .tab_content h2 {
        display: block;
        margin-top: 20px;
        padding: 15px;
        color: #FFF;
        font-size: 17px;
        font-weight: normal;
        -webkit-border-top-right-radius: 5px;
        -moz-border-top-right-radius: 5px;
        border-top-right-radius: 5px;
        -webkit-border-top-left-radius: 5px;
        -moz-border-top-left-radius: 5px;
        border-top-left-radius: 5px;
        background: #4c79ad;
    }

    .tab_list {
        display: block !important;
        padding: 0 10px;
        border: 1px solid #4c79ad;
        background: #ffffff;
    }

    .tab_list p {
        margin: 0;
    }

    .tab_list p a {
        padding: 20px 0;
    }

    .tab_list p span.btn {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    .sidebar-container {
        flex-flow: column;
    }

    .sidebar-container #main_new {
        width: auto;
        margin-right: 0;
    }

    #sidebar_new {
        width: auto;
    }

    #drawer-menu #drawer-menu-button {
        top: 17px;
        left: -67px;
    }

    #drawer-menu #drawer-menu-body {
        padding: 14px 0;
    }

    .box {
        margin-bottom: 20px;
        line-height: 1.75;
    }

    #footer {
        padding-top: 20px;
    }

    #footer ul {
        margin-left: 20px;
        margin-bottom: 15px;
        flex-direction: column;
        align-items: baseline;
    }

    #footer ul li {
        line-height: 2em;
    }

    #footer ul li:not(:last-of-type):after {
        display: none;
    }

    #footer p {
        padding: 0 20px;
        text-align: initial;
    }

    #footer p:not(:last-of-type) {
        margin-bottom: 6px;
    }

    address {
        margin-top: 20px;
    }

    .scroll-top {
        bottom: 17px;
        right: 17px;
    }

    .form_border_title span {
        display: block;
        padding: 0;
        padding-left: 10px;
    }

    .sp_br_block {
        display: block;
    }

    .form_plan_list {
        width: 100%;
    }

    .form_table_box form {
        overflow: hidden;
    }

    .form_plan_list dl {
        float: none;
        margin-right: 0%;
        width: 100%;
        margin-bottom: 3%;
        box-sizing: border-box;
    }

    .form_plan_list dl dt {
        padding: 10px 10px 5px 10px;
        font-size: 1.5rem;
    }

    .form_plan_list dl dd {
        padding: 20px 10px;
        font-size: 1rem;
    }

    #form_plan_text {
        margin-left: 0 !important;
    }

    #form_plan_text li {
        margin-bottom: 10px;
    }

    .form_blue_table {
        border-bottom: none;
        margin-bottom: 5px;
    }

    .form_blue_table th {
        display: block;
        padding: 15px 10px;
        width: 100%;
        font-size: 0.9rem;
        box-sizing: border-box;
    }

    .form_blue_table td {
        padding: 15px 10px;
        display: block;
        width: 100%;
        box-sizing: border-box;
        border-left: 1px solid #4c79ad;
        border-bottom: 1px solid #4c79ad;
        margin-bottom: 10px;
    }

    .form_blue_table td input {
        margin: 0;
        padding: 15px 10px;
        width: 100%;
        box-sizing: border-box;
    }

    .form_blue_table td textarea {
        width: 100%;
        box-sizing: border-box;
    }

    .form_blue_table td span {
        display: block;
        margin-bottom: 5px;
        margin-top: 10px;
    }

    .form_blue_table td span.sp_first {
        margin-top: 0;
    }

    .form_blue_table th .form_required {
        font-size: 0.8rem;
        padding: 2px 10px;
        width: auto;
        text-align: center;
    }

    .form_sub_title_line-middle {
        font-size: 1.2rem;
    }

    .form_sub_title_line:after {
        width: 50%;
    }

    .form_sub_title_line-middle:after {
        width: 20%;
    }

    .form_rule_box {
        width: 100%;
    }
    .form_btn_confirm:after {
        left: calc(100% - 20px);
    }

    .form_btn_confirm input {
        width: 100%;
    }

    .form_blue_table td input.form_two_box {
        margin-left: 0;
        margin-right: 0;
    }

    #thanks_box {
        margin-top: 0;
    }

    .thanks_img_stop img {
        width: 100%;
    }

    .thanks_content {
        margin-top: 20px;
    }

    .thanks_content_plan {
        width: 100%;
        flex-direction: column;
    }

    .thanks_content_plan dl {
        float: none;
        margin-right: 0%;
        width: 100%;
        margin-bottom: 3%;
        box-sizing: border-box;
    }

    .thanks_content_plan dl dt {
        padding: 10px 10px 5px 10px;
    }

    .thanks_content_plan dl dd {
        padding: 20px 10px 10px 20px;
        font-size: 1rem;
    }

    .thanks_content_plan dl dd input {
        width: 70%;
    }

    .thanks_content_plan dl dd input[type="image"] {
        width: auto;
    }

    .thanks_content_direct dl {
        display: block;
        width: 100%;
    }

    .thanks_content_direct dl dt {
        font-size: 1.1rem;
        display: block;
        width: 100%;
        padding: 10px;
        text-align: center;
    }

    .thanks_content_direct dl dd {
        font-size: 1.1rem;
        display: block;
        width: 100%;
        box-sizing: border-box;
        margin-bottom: 0;
        text-align: center;
    }

    .thanks_content_table th,
    .thanks_content_table td {
        display: block;
        width: 100%;
        padding: 10px;
    }

    .thanks_img_mail {
        width: 100%;
        margin-top: 20px;
        margin-bottom: 0;
    }

    .thanks_img_mail img {
        width: 100%;
    }

    .ta1 th,
    .ta2 th {
        word-break: initial;
    }

    .ta2 th, .ta2 td {
        display: block;
        width: auto;
    }
}