@charset "utf-8";
@import url("/css/common/common_sp.css");
@media screen and (max-width: 580px){


/* // Common
----------------------------------------------- */
body{
    min-width: initial;
}


/* // Header
----------------------------------------------- */
#Header {
	padding: 0;
    border-bottom-width: 3px;
	position: relative;
}

#Header img.logo {
	max-width: 240px;
}

.h1a {
  width: 100%;
}
.h1a div {
  justify-content: center;
}
.h1a div span {
  width: 65%;
  line-height: 1.2;
}
.h1a div img {
  width: 35%;
  height: auto;
}

#Header ul.link {
    margin: 5px 0 0;
    font-size: 96%;
	position: static;
}

#Header ul.link li {
	margin-left: 0;
	margin-right: 15px;
    float: left;
}

#Header ul.link li:nth-child(5) {
    clear: none;
}

#Header ul.link li a {
    padding: 5px 0;
    line-height: 1;
    display: inline-block;
}



/* // Gnavi
----------------------------------------------- */
#Gnavi {
	padding: 0 0;
	margin-bottom: 15px;
}

#Gnavi .widthFix {
	padding: 0 0 !important;
}

#Gnavi .logo {
    padding: 5px 10px;
	width:100%;
	border-right:0 solid #dfdfdf;
	border-bottom: 1px solid #dfdfdf;
    float: none;
}

#Gnavi nav {
	width: 100%;
	border-bottom: 1px solid #dfdfdf;
    float: none;
}

#Gnavi nav ul {
	width: 100%;
    padding-left: 7px;
	padding-right: 7px;
	display: -webkit-box;
	display: -moz-box;
	box-sizing: border-box;
}

#Gnavi nav li {
	width: 25%;
    padding-left: 0;
	padding-right: 0;
	border-right: 1px solid #dfdfdf;
}

#Gnavi nav li:last-child,
#Gnavi nav li.last {
    border-right:0;
}

#Gnavi nav li a {
    padding-top: 7px;
	padding-bottom: 7px;
	font-size: 12px;
	font-weight: 300;
	line-height: 1.3em;
	display: block;
}
#Gnavi nav li a i {
	display: none;
}


/* // Footer
----------------------------------------------- */
#Footer {
	padding: 15px 10px;
}

#Footer ul.link li {
	margin-right: 25px;
    float: left;
}

#Footer p.copy {
    margin-top: 10px;
	position: static;
}

#Footer .footeLogo {
    top: 0;
}



/* // pageTop
----------------------------------------------- */
.pageTop {
    right: 10px;
}



/* // PageHeder
----------------------------------------------- */

/* // Module
----------------------------------------------- */
input, textarea {
	width: 100%;
}

dl.tableA {
	line-height:1.5;
}

dl.tableA dt {
    color: #333;
	background-color: #eee;
	width: 100%;
	padding: 8px;
	border-width: 0;
	border-left: 2px #333 solid;
    float: none;
    box-sizing: border-box;
}

dl.tableA dd {
	margin-bottom:7px;
	width: 100%;
	padding: 8px;
	font-size: 108%;
	font-weight: 300;
    border-width: 0;
    float: none;
}

dl.tableA.s dt,
dl.tableA.s dd {
	padding: 5px;
	font-size: 96%;
}

dl.tableA dt:first-child {
	border-width: 0;
	border-left: 2px #333 solid;
}

dl.tableA dt.last {
	border-width: 0;
	border-left: 2px #333 solid;
}

dl.tableA dd.first {
	border-width: 0;
}

dl.tableA .item em {
	display: block;
}

.loginBox {
	width: 100%;
	margin: 0 auto;
}

.kiyakubox {
	height: 200px;
}

ul.registFlow {
	margin-bottom: 25px;
}

ul.registFlow li {
    margin: 0 15px 0 0;
    width: calc(25% - 15px);
    font-size: 82%;
    line-height: 1.2;
}

ul.registFlow li:nth-child(1):after,
ul.registFlow li:nth-child(2):after,
ul.registFlow li:nth-child(3):after {
    border-width: 30px 0 30px 15px;
    right: -15px;
}

ul.registFlow.on1 li:nth-child(1):after,
ul.registFlow.on2 li:nth-child(2):after,
ul.registFlow.on3 li:nth-child(3):after {
    border-width: 30px 0 30px 15px;
    right: -15px;
}

#Program .mv {
    height: auto;
}

/* // ボタン設定
----------------------------------------------- */
/* 会員登録用 Btn */
.accountBtnList li {
    margin: 20px auto;
    padding: 0;
    width: 215px;
    display: block;
}

/* 登録情報の変更用 Btn */
.privacyBtnList li {
    margin: 20px auto;
    padding: 0;
    width: 215px;
    display: block;
}

/* 優待商品と交換用 Btn */
.exchangeBtnList li {
    margin: 20px auto;
    padding: 0;
    width: 215px;
    display: block;
}

/* 登録情報の変更用 Btn */
.exchangeBtnAnotherList li {
    margin: 0 auto;
    width: 215px;
    display: block;
}

/* お問い合わせ用 Btn */
.contactBtnList li {
    margin: 20px auto;
    padding: 0;
    width: 215px;
    display: block;
}

/* 退会用 Btn */
.deleteBtnList li {
    margin: 20px auto;
    padding: 0;
    width: 215px;
    display: block;
}


/* 優待商品交換確認用 Btn */
.goodsConfirmBtnList li {
    margin: 20px auto;
    padding: 0;
    width: 215px;
    display: block;
}

/* ［アンケート］ボタン */
.surveyBtn {
    width: 76%;
}

#startBtn {
    width: 90%;
    font-size:0.8125em;
}

#surveyBtnTop {
    width: 90%;
    font-size:0.8125em;
}

/* // boxFrame
----------------------------------------------- */
.boxFrameB.account .box1 {
	width: 100%;
}




/* // --------------------------------------------------------------------------------------------------------- */

/* // Structure
----------------------------------------------- */

#ContentsWrap:after {
    content: ".";
    display: block;
    height: 0;
    font-size:0;
    clear: both;
    visibility:hidden;
}

#ContentsWrap {
    display: inline-block;
}

/* Hides from IE Mac */
* html #ContentsWrap {
    height: 1%;
}
#ContentsWrap {
    display: block;
}
/* End Hack */


#ContentsWrap {
	padding-bottom: 60px;
}

#ContentsWrap #SideContents {
	margin-right: 0;
    width: 0;
	height: 0;
    float: none;
}

#ContentsWrap #MainContents {
	width: 100%;
    float: none;
}

#ContentsWrap #MainContents.narrow {
	width: 100%;
}


/* // SPメニュー
----------------------------------------------- */
.modal {
	position:fixed;
	top:0;
	left:100%;
	right:0;
	bottom:0;
	z-index:10000;
	padding-left:60px;
}
.modal .wrap {
	background-color:#FFF !important;
	padding-bottom:30px;
}


.modal:after {
	content:' ';
	position:absolute;
	z-index:5000;
	top:0;
	right:0;
	bottom:0;
	left:0;
	background-color:rgba(248, 249, 250, 0.8);
	opacity:0;
	--webkit-transition:all .3s ease-out;
	-moz-transition:all .3s ease-out;
	-ms-transition:all .3s ease-out;
	-o-transition:all .3s ease-out;
	transition:all .3s ease-out;
}
.modal .close {
	position:absolute;
	z-index:9000;
	top:0;
	left:0;
	height:100%;
	opacity:0;
	--webkit-transition:all .3s ease-out;
	-moz-transition:all .3s ease-out;
	-ms-transition:all .3s ease-out;
	-o-transition:all .3s ease-out;
	transition:all .3s ease-out;
}
.modal .close a {
	display:block;
	text-decoration:none;
	text-align:center;
	font-size:30px;
	padding:10px;
	background-color:#0c79c5;
	color:#FFF;
}
.modal .close a.b {
	position:absolute;
	background:none;
	display:block;
	top:40px;
	left:0;
	width:40px;
	bottom:0;
}
.modal .wrap {
	--webkit-transition:all .3s ease-out;
	-moz-transition:all .3s ease-out;
	-ms-transition:all .3s ease-out;
	-o-transition:all .3s ease-out;
	transition:all .3s ease-out;
	position:relative;
	z-index:8000;
	min-width:250px;
	margin-left:100%;
	height:100%;
	overflow-y:scroll;
	-webkit-overflow-scrolling:touch;
}
.modal .wrap .block {
	font-size:13px;
}
.modal .wrap .block h4 {
	padding-left:15px;
	line-height:45px;
}
.block.main {
}
.modal .wrap .block ul li a {
	display:block;
	padding:9px 15px;
}
.modal .wrap .block.sub ul li a {
	padding:6px 15px;
}

.modal.open:after {
	opacity:1;
}
.modal.open .close {
	opacity:1;
}
.modal.open .wrap {
	margin-left:0;
}
.modal.show {
	left:0;
}




/*
.modal .block.point {
	margin-top:30px;
}

.modal p.head {
	font-size:18px;
	font-weight:400;
	border-left:3px solid #0c79c5;
	padding:15px 0 15px 15px;modal .wrap .block ul li a
	margin-bottom:8px;
}
.modal ul.menu{
}
.modal ul.menu li.parent > a{
	font-weight:200;
	padding:12px 0 12px 25px;
}
.modal ul.menu li i {
	top:25%;
	left:10px;
}
.modal ul.menu li a:hover i {
	left:10px;
}
.modal ul.menu .childWrap{
	padding-bottom:10px;
	display:none;;
}

.modal ul.menu .childWrap li.child a{
	margin-left:20px;
	font-weight:200;
	display:block;
	font-size:13px;
	line-height:1.4;
	padding:8px;
}
*/


/* // Top ----------------------------------------------- */
#Top #MainVisual {
	height: auto;
	/* background: url(/images/senshuikedahd/top_mv_01.jpg) center top repeat-x;
	background-size: cover; */
}

#Top #MainVisual .widthFix {}

.widthFixTop {
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
}

#Top #MainVisualLayer {
    height: auto;
}

#Top .memberbox {
    padding: 20px 21px;
    width: auto;
    height: auto;
    margin-top: 12px;
}

#Top .memberbox.login {
    /*margin: 25px 11px 0;*/
    margin: 25px 0 0;
    padding: 20px 21px;
    width: auto;
    height: auto;
    overflow: hidden;
    float: none;
}

#Top .memberbox .catchbox {
	padding: 0;
}

#Top .memberbox .catchbox p.catch {
	font-size: 17px;
}

#Top .memberbox .catchbox p.catch em {
    padding-top: 2px;
	font-size: 24px;
}

#Top .memberbox .catchbox p.btn a:active {
    color: #fff;
    background: #0c79c5;
    text-decoration: none;
}

#Top .loginbtn {
	margin-top: 16px;
}

/* #Top .loginbtn li {} */

#Top .loginbtn li img {
	width: 90% !important;
}

 #Top .loginbtn li.last img {
    width: 90% !important;
}

#Top .loginbtn li a {
    width: 100%;
}

#Top .loginbtn li:first-child a {
    margin: 0 0 16px 0;
}

#Top .memberbox .catchbox p.btn a {
  font-size: 20px;
}
#Top .loginbtn li a {
    font-size: 16px;
}

#Top #Flow {
	padding-bottom:30px;
}

#Top #Goods {
	padding-top: 30px;
	padding-bottom: 30px;
}
/*
#Top #Link {
    margin: 0 auto 0;
	padding-top: 0;
	padding-bottom: 80px;
}
*/

.goodsListBox-01,
.goodsListBox-02 {
  flex-direction: column;
  gap: 16px;
}

.black-course,
.purple-course,
.green-course,
.red-and-orange-course,
.blue-course {
  width: 80%;
  margin: 0 auto;
}
.black-course span,
.purple-course span,
.green-course span,
.red-and-orange-course span,
.blue-course span {
  font-size: 16px;
}

/* add */
#Top #Link {
	padding-top:40px;
	padding-bottom:40px;
}

#Top #Link .linkArea {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 16px;
}

html.sp #Top #Link .kigyo img,
html.sp #Top #Link .ir img {
    /* width: 475px;
    height: 100px; */
    width: 60px;
    height: 60px;
}

#Top .memberbox .point {
	margin-bottom: 0;
}

#Top .memberbox .point em {
	padding-right: 7px;
}

#Top .memberbox .bottom {
    margin-bottom: 10px;
}

#Top .willsCoinDiv {
    margin: 0;
}

#Top .attention {
	width: 100%;
	margin: 0;
	padding: 0 10px;
	box-sizing: border-box;
}

#Top .attention p {
    margin: 0;
	padding: 10px;
	text-align: left;
}

#Top .topNews {
    margin: 0 auto 40px;
    padding: 0 10px;
    width: auto;
}

#Top .topNewsH2 {
    margin: 2em 0 1.6em;
    padding: 0 10px;
}

#Top .topNewsDList {
    width: 94%;
}

#Top .topNewsDList dt {
    float: none;
}

#Top #Link .kigyo a {
    margin: 0 0 25px 0;
}

#Top .deadlineNotes {
    margin: 0 11px 24px;
    width: auto;
    letter-spacing: 0;
}

.estimatedShippingDate {
    margin: 30px 0 0;
    width: 100%;
    height: auto;
    padding: 16px 8px;
}
.estimatedShippingDate-title {
    margin-bottom: 16px;
}
.estimatedShippingDate-goods {
    margin-bottom: 16px;
    padding: 4px;
}
.estimatedShippingDate-goodsBoxLeft {
    padding-right: 4px;
}
.estimatedShippingDate-goodsBoxRight {
    padding-left: 4px;
}
.estimatedShippingDate-goodsTitle {
    font-size: 14px;
}

.estimatedShippingDateH2 {
    margin: 1em auto 1.6em;
    font-size: 136%;
    letter-spacing: 0.03em;
}

/* .estimatedShippingDateH2:before {
    content: "\f0d1  \f0d1";
    margin: 0 0.3em 0 0;
}

.estimatedShippingDateH2:after {
    content: "\f0d1  \f0d1";
    margin: 0 0 0 0.3em;
} */

.estimatedShippingDateList {
    height: auto;
}

.estimatedShippingDateList li {
    margin: 0 auto 2em;
    width: 100%;
    height: auto;
    float: none;
}

.estimatedShippingDateList li:last-child {
    margin: 0 auto 2em;
}

.estimatedShippingDateList li:after {
    content: none;
    }

.estimatedShippingDateH3 {
/*    padding: 22px 0 0; */
/*    font-size: 91%;*/
    font-size: 80%;
    line-height: 1.4;
}

.estimatedShippingDateH3 em {
    font-size: 136%;

    font-size: 145%;
}

.holdStakesPra {
    background-size: 45px 41px;
    padding: 0.6em 0;
    width: 94%;
    font-size: 91%;
}

.estimatedShippingDatePra {
    margin: 1em auto;
    padding: 0.6em 0;
    width: 94%;
    font-size: 91%;
}

.estimatedShippingDatePra span {
    margin: 0;
    display: inline-block;
}

/* .estimatedShippingDatePra span:before {
    content: "\f073";
    color: #0c79c5;
    margin: 0 0.4em 0 0;
    font-family: FontAwesome;
    line-height: 1;
} */

.mainImage-item-wrapper {
  padding: 20px 16px;
}
.mainImage-item-image-01,
.mainImage-item-image-03 {
  width: 40px !important;
  height: auto !important;
}
.mainImage-item-image-02 {
  width: 50px !important;
  height: auto !important;
}
.mainImage-item-step-02 {
    padding-bottom: 16px;
}
.mainImage-item-step-03 {
    padding-bottom: 34px;
}

/* // 商品一覧 ----------------------------------------------- */

#List  #PageTitle {
    height: 0;
	margin-bottom: 20px;
}

#List  #PageTitle h1 {
	background-repeat: repeat-y;
	background-size: contain;
	padding: 15px 0;
	font-size: 24px;
}

#List  #PageTitleDummy {
    margin-bottom: 10px;
}


.menu_btn2 {
    color: #fff;
    background: #0c79c5;
    width: 80%;
    height: 36px;
    font-size: 108%;
    font-weight: bold;
    line-height: 36px;
    text-align: center;
    display: block;
    -webkit-transition: all .2s ease;
    -moz-transition: all .2s ease;
    -o-transition: all .2s ease;
    -ms-transition: all .2s ease;
    transition: all .2s ease;
    position: relative;
    left: 10%; /* 要素の左端を親要素の中央に配置 */
}


.menu_btn2:hover {
    color: #000;
    background: #e5e5e5;
    text-decoration: none;
}

.menu_btn2:before {
    content: "\f107";
    color: #fff;
    font-family: FontAwesome;
    font-size: 127%;
    position: absolute;
    left: 1em;
    top: 0;
}

.menu_btn2:hover:before {
    color: #000;
}

.menu_btn2 i {
	color:#fff;
	padding-left:10px;
	font-size:130%;
}

.menu_btn1 {
    color: #fff;
    background: #0c79c5;
    margin: 0;
    padding: 0;
    width: 80%;
    height: 36px;
    font-size: 16px;
    font-weight: bold;
    line-height: 36px;
    text-align: center;
    display: none;
    box-sizing: border-box;
    position: fixed;
	top: 0;
	right: 0;
    -webkit-transition: all .2s ease;
    -moz-transition: all .2s ease;
    -o-transition: all .2s ease;
    -ms-transition: all .2s ease;
    transition: all .2s ease;
}

.menu_btn1:before {
    content: "\f107";
    color: #fff;
    font-family: FontAwesome;
    font-size: 127%;
    position: absolute;
    left: 1em;
    top: 0;
}

.menu_btn1:hover {
    color: #000;
    background: #e5e5e5;
    text-decoration: none;
}

.menu_btn1:hover:before {
    color: #000;
}

.menu_btn1 i {
	color: #fff;
	padding-left: 10px;
	font-size: 130%;
}


.googsListWrap {
	width: 100%;
	margin-left: 0;
}

.googsListWrap .googsItem {
	width: 50%;
	margin-left: 0;
	margin-bottom: 38px;
    float: left;
	box-sizing: border-box;
}

.googsListWrap .googsItem:nth-child(even){
	padding-right: 10px;
}

.googsListWrap .googsItem:nth-child(odd){
	padding-left: 10px;
}


.googsListWrap .googsItem a {
	padding-bottom: 10px;
}

.googsListWrap .googsItem a:hover {
	padding-bottom: 8px;
}

.googsListWrap .googsItem a p.ph {
    width: 100%;
	display: block;
}

.googsListWrap .googsItem a p.ph img {
	width: 100%;
}

.googsListWrap .googsItem a p.ph img.lie {
	width: auto;
}



.googsListWrap .googsItem a p.name {
	margin-top: 12px;
	margin-bottom: 8px;
	font-size: 106%;
	line-height: 1.4;
}

.googsListWrap .googsItem a p.point {
	font-size: 120%;
	position: static;
}

.googsListWrap .googsItem a .detail {
    margin-top:7px;
    padding: 0;
    width: 100%;
    font-size: 100%;
    display: block;
	position: static;
}

.googsListWrap .googsItem a .detail i {
	color: #fff;
	padding-left: 20px;
}

.goddsAttention.spFs2S {
    font-size: 100% !important;
}

.deadlineNotes {
    margin: 0 0 1em;
    width: 100%;
    font-size: 109%;
    letter-spacing: 0;
}

.history_page {
  font-size:100%;
}

/* // 商品検索 ----------------------------------------------- */
#productSearch {
    margin: 0 0 40px;
}

#productSearch input[type="text"] {
    margin: 0;
    padding: 0 45px 0 10px; /* 45px = 10px + input[type="submit"] 35px */
    width: 100%;
    height: 36px; /* 34px + border 1px + 1px */
    box-sizing: border-box;
}

#productSearch input[type="submit"] {
    width: 70px;
    position: absolute;
    top: 0;
    right: 0;
    left: auto;
    box-sizing: border-box;
}






/* // 商品詳細 ----------------------------------------------- */

#Detail #DetailWrap {}

#DetailWrap:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}

#DetailWrap {
    display: inline-block;
}

/* Hides from IE Mac */
* html #DetailWrap {
    height: 1%;
}

#DetailWrap {
    display:block;
}
/* End Hack */

#Detail #DetailWrap .phArea {
	margin-right: 0;
    width: 100%;
    float: none;
}

#Detail #DetailWrap .txArea {
	margin-top: 30px;
	width: 100%;
    float: none;
}

#Detail .flex-control-nav {
	margin-left: 0;
	margin-top: 4px !important;
    width: 100%;
}

#Detail .flex-control-nav img {
	padding: 0 2px !important;
}

#Detail #DetailWrap .txArea {
	width: 100%;
    float: none;
}

#Detail #MainContents .nowPoint {
    margin-top: 18px;
	font-size: 108%;
	text-align: left;
}

#Detail #MainContents .nowPoint span {
	background-color: #fff;
	display: block;
}

#Detail #MainContents .nowPoint span i {
	display: none;
}

#Detail #MainContents .nowPoint span strong {
	padding: 0 4px;
}

#Detail #MainContents .over {
    margin-top: 8px;
	font-size: 92%;
	line-height: 1.6;
    text-align: left;
}

#Detail #MainContents .goodsname {
	margin-top: 20px;
	font-size: 140%;
}

#Detail #MainContents .exchange {
    color: #ea002e;
    background-color: #fffee2;
    margin-bottom: 27px;
    padding: 10px;
    font-size: 110%;
	line-height: 1;
}

#Detail #MainContents .exchange {
    color: #fff;
	background-color: #777;
    margin-bottom: 27px;
	padding: 10px;
	font-size: 110%;
    line-height: 1;
}

#Detail #MainContents .description {
	margin-bottom: 18px;
}

#Detail #MainContents .icon {
	margin-bottom: 18px;
}

#Detail #MainContents .icon img {
	padding-right: 10px;
	width: 50px;
}

#Detail #MainContents .attention {
	color: #f40400;
	font-size: 72%;
	line-height: 1.6;
}

#Detail #MainContents .attention {
	color: #c00;
	font-size: 72%;
	line-height: 1.6;
}



#Detail #MainContents .submit {
	margin-top: 50px;
}

#Detail #MainContents .submit.none a {
	background-color: #ff7569;
	cursor: default;
}

/* // ショッピングカート ----------------------------------------------- */
.itemList tr {
    position: relative;
}

.itemList td {
    height: auto;
}

.itemPhoto {
    width: 20%;
    padding: 1em 0;
}

.itemName {
    padding: 0 0 0 2%;
    width: 33%;
    font-size: 91%;
    line-height: 1.2;
}

.itemPoint {
    padding: 0 0 0 2%;
    width: 18%;
    font-size: 91%;
}

.itemQuantity {
    padding: 0 0 0 3%;
    width: 10%;
    font-size: 91%;
}

.itemQuantity select {
    padding: 7px 0;
    width: 100%;
    text-align: center;
}

.itemDelete {
    padding: 0;
    width: 12%;
}

.itemDelete a {
    padding: 0 0 0 0.5em;
    font-size: 91%;
    display: block;
}

.itemDelete a:before {
    margin: 0;
}

.shortPoint {
    padding: 0.5em 0.8em 0.6em 2em;
    line-height: 1.3;
    right: 2em;
    bottom: -3.7em;
}

.shortPoint:before {
    position: absolute;
    left: 0.6em;
}

.checkPoint {
    width: 100%;
}

.shoppingcartBtnList li {
    width: 100%;
}

.shoppingcartBtnList li:first-child {
    margin: 0 0 1em;
}

.continueBtn,
.confirmBtn {
    width: 100%;
}

.cartBtn {
    top: 15px;
    left: inherit;
    right: 10px;
}

/* // 優待商品交換履歴 ----------------------------------------------- */
.exchangeHistCheckPoint {
    margin: 0 0 3em;
}
.exchangeHistCheckPoint .possessedPoints {
    margin: 0;
    text-align: center;
    display: block;
}
.exchangeHistoryList tr {
    position: relative;
}
.exchangeHistoryList td {
    /* position: absolute; */
    height: auto;
}
.exchangeHistoryPhoto {
    padding: 1em 0;
    width: 20%;
}
.exchangeHistoryName {
    padding: 0 0 0 2%;
    width: 33%;
    font-size: 91%;
    line-height: 1.2;
}
.exchangeHistoryPoint {
    padding: 0 0 0 2%;
    width: 18%;
    font-size: 91%;
}
.exchangeHistoryQuantity {
    padding: 0 0 0 3%;
    width: 10%;
    font-size: 91%;
    line-height: 1.4;
}
.exchangeHistoryReExchang {
    padding: 0.6em;
    width: 12%;
    font-size: 91%;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    letter-spacing: 0.3em;
}
.exchangeHistoryReExchang a {
    padding: 0.3em;
    display: inline-block;
}

/* // 優待ポイントについて
 ----------------------------------------------- */
#Program .bnr {
	padding: 25px 10px;
	box-sizing: border-box;
}

#Program table {
	font-size: 91%;
}

#Program table th,
#Program table td {
	padding: 10px 5px;
}

.pointTableNotesList {
    margin: 1em auto 40px;
    padding: 0;
    width: 100%;
}
.td-04 {
  width: 32%;
}

.td-05 {
  width: 26%;
  padding-left: 40px !important;
  padding-right: 0 !important;
}
.responsive-break {
  display: inline-block;
}
.responsive-break-pc {
  display: none;
}
.and-conditions {
  top: 86%;
  right: -32%;
}
.or-conditions-01 {
  top: 86%;
  right: -32%;
}
.or-conditions-02 {
  top: 86%;
  right: -32%;
}

/* // 株主ポスト ----------------------------------------------- */

#Post .detailBlock .tx {
    width: 100%;
	float: none;
}

#Post .detailBlock .ph{
	margin-left: 0;
    width: 100%;
	float: none;
}

/* // 企業情報
 ----------------------------------------------- */
#stockQuotes iframe {
	height: 3800px;
}

/* ポイント通帳    -------------------------------------------- */
.pwNowUserPoint {
    color: #222;
    background: #fcfcf4;
    margin: auto;
	margin-bottom: 25px;
    padding: 14px;
	width: 85%;
    font-size: 12px;
    border:5px #cccdc4 solid;
}

.pwNowUserPoint span.pointSp {
    color: #dc0067;
	padding-left: 11px;
}

.pwNowUserPoint span.pointSp em {
	font-size: 200%;
}

#Passbook table {
	font-size: 10px;
}

.pwNowUserPoint span.deadLine {
	font-size: 14px;
}

.pwNowUserPoint span.attention {
	font-size: 10px;
}

/* // バーチャル株主総会
 ----------------------------------------------- */
.videoContainerWrap {
    margin: 0 auto;
    padding: 0;
    width: 100%;
}
.signLamp {
    margin: 1em auto;
}
/* // バーチャル株主総会(メッセージ)
 ----------------------------------------------- */
.fukidashi {
  display: none;
  width: 350px;
  position: absolute;
  bottom: 80px;
  right: 0px;
  padding: 16px;
  border-radius: 5px;
  background: #33cc99;
  color: #fff;
  font-weight: bold;
}
.fukidashi:after {
  position: absolute;
  width: 0;
  height: 0;
  left: 250px;
  bottom: -19px;
  margin-left: 30px;
  border: solid transparent;
  border-color: rgba(51, 204, 153, 0);
  border-top-color: #33cc99;
  border-width: 10px;
  pointer-events: none;
  content: " ";
}
.text:hover + .fukidashi {
  display: block;
}

/* // 優待ポイントについて
----------------------------------------------- */
.gotoPortalBtn {

    line-height: 1.2;
    box-sizing: border-box;
    display: block;
}

/* // バーチャル株主総会
 ----------------------------------------------- */
.videoNote {
    margin: 0 auto 1em;
    width: 100%;
}

h1.headTxA {
    margin-bottom: 35px;
}

.vcwfixes {
    margin: 0 auto;
    padding: 0 10px;
    width: calc(100% - 20px);
    height: auto;
    -moz-box-shadow: 0 0 10px rgba(0,0,0,0.6);
    -webkit-box-shadow: 0 0 10px rgba(0,0,0,0.6);
    box-shadow: 0 0 10px rgba(0,0,0,0.6);
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 10;
}

/* Line Switching */
.reloadPra {
    margin: 0 0 10px;
	font-size: 91%;
	line-height: 1.6;
}

.reloadPra a {
	font-size: 82%;
}

.lineSwitchingPra {
	font-size: 73%;
}

.lineSwitchingOList li:nth-child(9n),
.lineSwitchingOList li:nth-child(n+10) {
	margin: 6px 1% 6px 0;
}

.lineSwitchingOList li {
	margin: 6px 1% 6px 0;
	padding: 0;
	width: 23%;
	float: left;
}

.lineSwitchingOList li:nth-child(4n+1) {
	margin: 0 1% 6px 2.5%;
}

.lineSwitchingOList li:nth-child(4n) {
	margin: 6px 0 6px 0;
}

.lineSwitchingOList li:nth-child(n+5) {
	margin-top: 0;
}

.lineSwitchingOList li:first-child {
	margin-top: 6px;
}



/* ajax ver */
#changeTab li {
    width: 40%;
}

#changeTab li a {
    width: auto;
    font-size: 109%;
}



/* iframe ver */
#changeIFrame li {
    width: 40%;
    font-size: 109%;
}


/* css ver */
#changeDiv li {
    width: 40%;
    font-size: 109%;
}

/* top */
.entrance {
    margin: 0 auto;
    padding: 0 10px;
    width: 100%;
}

.topH2 {
    font-size: 1.25em; /* 20px */
    line-height: 1.2;
}

.entranceList {
    margin: 60px 0 90px;
    padding: 0;
    width: 100%;
}

.entranceList li:first-child,
.entranceList li:last-child {
    margin: 0;
    width: 100%;
    height: auto;
    float: none;
}

.entranceList li:last-child {
    margin: 20px 0 0;
}

.loginPra {
    margin: 30px;
}

.entranceLoginList {
    margin: 60px 0 90px;
    padding: 0;
    width: 100%;
}

.entranceLoginList li {
    margin: 0;
    width: 100%;
    height: auto;
    min-height: 210px;
    float: none;
}

.entranceLoginList li:first-child {
    margin: 0 0 20px;
}

.preRegisterPra,
.topH3,
.registerPra {
    margin: 30px 20px;
}

.standByPra {
    margin: 20px;
    font-size: 1.125em; /* 18px */
}

.standBy .topH3 {
    margin: 20px;
    font-size: 1.625em; /* 26px */
}

.standBy .registerPra {
    margin: 20px;
}

.registerPra + .registerPra {
    margin-top: -10px;
}

/* 動画配信障害発生時 */
.failureInfoH2 {
    margin: 20px;
    font-size: 1.125em; /* 18px */
}

.failureInfoPra {
    margin: 10px 20px;
    font-size: 0.938em; /* 15px */
}

/* End */

/* add 2020.04.17 */
.AnnualMeeting {
    width: 90%;
    height: auto;
}

.AnnualMeeting a {
    width: 100%;
    height: auto;
    overflow: hidden;
}

.AnnualMeeting a:after {
    content: none;
}

.AnnualMeeting .subject {
    margin: 0.6em auto;
    padding: 0;
    width: 95%;
    height: auto;
    font-size: 110%;
    line-height: 1;
    text-align: center;
    display: block;
}

.AnnualMeeting .subject:before {
    content: "";
    width: 92%;
    height: 3px;
    position: absolute;
    right: 0;
    bottom: -4px;
    left: 0;
}

.AnnualMeeting .subject:after {
    content: "\f18e";
    color: #c30d23;
    margin: 0 0 0 0.4em;
    padding: 0;
    font-size: 110%;
    font-family: FontAwesome;
    font-weight: normal;
}

.AnnualMeeting .time {
    margin: 0.6em auto 0.4em;
    width: 90%;
    height: auto;
    font-size: 118%;
    line-height: 1;
    text-align: center;
    display: block;
}

.AnnualMeeting .explain {
    margin: 0 auto 0.6em;
    padding: 0.3em 0;
    width: 90%;
    height: auto;
    font-size: 91%;
    line-height: 1;
    text-align: center;
    display: block;
}

/* // バーチャル株主総会
 ----------------------------------------------- */
.videoContainerWrap {
    margin: 0 auto;
    padding: 0;
    width: 100%;
}
.signLamp {
    margin: 1em auto;
}

/* // 2021.12.14 Live Streaming
 ----------------------------------------------- */
.videoContainerWrap {
    margin: 0px auto;
    padding: 0;
    width: 90%;
}

.archiveH2 {
    margin: 30px auto 10px;
    width: 100%;
    font-size: 136%;
}

.systemRequirementsNotesPra {
    margin: 20px 11px 10px;
    width: auto;
    padding: 1em;
    font-size: 73%;
    line-height: 1.3;
    text-align: left;
    box-sizing: border-box;
}

.archivePra {
    margin: 0px 11px 0px;
    width: auto;
    font-size: 73%;
    line-height: 1.3;
}

.archiveMemo {
    margin: 10px 11px 40px;
    width: auto;
    font-size: 73%;
    line-height: 1.3;
}
/*
.arrival-time-notification {
  display: none;
}
*/

/* SP用のUser */
.elmSP .block.user {
    margin: 0 0 30px;
    border: solid 4px #629bc4;
}

.elmSP .block.user p.name {
    background: url(/images/senshuikedahd/top_icon_01-dark.png) left center no-repeat;
    background-size: auto 40px;
    margin: 6px 12px 12px;
    padding: 0 0 0 50px;
    height: 50px;
    font-size: 12px;
    line-height: 50px;
    border-bottom: solid 2px #ddd;
}

.elmSP .block.user p.name span {
    line-height: normal;
    vertical-align: middle;
    display: inline-block;
}

.elmSP .block.user p.name em {
    padding: 0 0.3em 0 0;
    font-size: 15px;
    display:inline;
}

.elmSP .block.user p.point {
    color: #629bc4;
    margin: 12px 12px 0;
    text-align: center;
}

.elmSP .block.user p.point em {
    font-size: 28px;
    padding: 0 0.1em 0 0;
}

.elmSP .block.user p.DepositUP {
    color: #629bc4;
    font-size: 15px;
    font-weight: bold;
    text-align: center;
}

.elmSP .block.user p.date {
    font-size: 11px;
    text-align: center;
}

/* ポイントテーブル（優待商品と交換のページ） */
#point-exchange table th {
    font-size: 13px;
}
#point-exchange table td {
    font-size: 13px;
}

.accordion__head .question .question-number {
  width: 16%;
}
.accordion__head .question .question-content {
  width: 78%;
}
.accordion__body .answer .question-number {
  width: 16%;
}
.accordion__body .answer .question-content {
  width: 78%;
}

.recommendationBrowser {
  flex-direction: column;
}
.recommendationBrowser-mac {
    padding-left: 0;
}

#Top #MainVisualLayerTop {
    height: auto;
}
#Top .memberboxTop {
    padding: 20px 21px;
    width: auto;
    height: auto;
    margin-top: 12px;
}
#Top .memberboxTop.login {
    margin: 25px 0 0;
    padding: 20px 21px;
    width: auto;
    height: auto;
    overflow: hidden;
    float: none;
}
#Top .memberboxTop .catchbox {
	padding: 0;
}
#Top .memberboxTop .catchbox p.catch {
	font-size: 17px;
}
#Top .memberboxTop .catchbox p.catch em {
    padding-top: 2px;
	font-size: 24px;
}
#Top .memberboxTop .catchbox p.btn a:active {
    color: #fff;
    background: #0c79c5;
    text-decoration: none;
}
#Top .memberboxTop .catchbox p.btn a {
  font-size: 20px;
}
#Top .memberboxTop .point {
	margin-bottom: 0;
}
#Top .memberboxTop .point em {
	padding-right: 7px;
}
#Top .memberboxTop .bottom {
    margin-bottom: 10px;
}
