.dialog {
  --blue: #003dea;
  --white: #fff;
  --black: #777;
  --shadow-black: rgba(0, 0, 0, .5);
}

/* ダイアログ外枠 */
#dialog {
  width: 30vw;
  min-width: 380px;
  background-color: var(--white);
  border: 1px solid var(--black);
  border-radius: .2rem;
  box-shadow: 0 4px 10px 0 var(--shadow-black);
  z-index: 200;

  position: fixed;
  margin: auto;  
  left: 50%;
  top: 50%;
  transform: translateX(-50%)
             translateY(-50%);
  padding: 1rem 2rem;

  display: flex;
  flex-direction: column;
  gap: 1rem;
}
#dialog.hide {
  display: none;
}

/* ダイアログ内要素リセット */
.dialog * {
  margin: 0;
  padding: 0;
  text-align: left;
}

/* Header */
.dialog__header__title {
  font-size: 1.8rem;
  line-height: 1.8rem;
  color:black !important;
}

/* Body */
.dialog.dialog__body p {
  margin: 0;
  line-height: 1.4rem;
  color:black !important;
}

/* Footer */
.dialog.dialog__footer {
  display: flex;
  justify-content: space-between;
}

/* キャンセルボタン */
.dialog.dialog__btn__sub {
  background-color: white;
  color: var(--blue);
  border: 0;
}
.dialog.dialog__btn__sub:hover {
  text-decoration: underline;
  cursor: pointer;
}

/* OK ボタン */
.dialog.dialog__btn__main {
	text-align:center;
}
.dialog.dialog__btn__main a {
    display: inline-block;
	width:120px;
	height:50px;
	text-align:center;
	box-sizing:border-box;
	border:1px solid #49494A;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    position: relative;
    -webkit-transition-property: color;
    transition-property: color;
    -webkit-transition-duration: 0.5s;
    transition-duration: 0.5s;
	font-size:18px;
	letter-spacing:2px;
	padding-top:6px;
	color:#fff!important;
	background:#49494A;
}
.dialog.dialog__btn__main a:hover {
	border:1px solid #49494A;
	color:#49494A!important;
}
.dialog.dialog__btn__main a:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #fff;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 0 50%;
    transform-origin: 0 50%;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-duration: 0.5s;
    transition-duration: 0.5s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
}

.dialog.dialog__btn__main a:hover:before, 
.dialog.dialog__btn__main a:active:before,
.dialog.dialog__btn__main span:hover:before, 
.dialog.dialog__btn__main span:focus:before, 
.dialog.dialog__btn__main span:active:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}
.dialog.dialog__btn__main a img + img,
.dialog.dialog__btn__main span img + img {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0 ;
	-webkit-transition: all ease 0.5s;
	-o-transition: all ease 0.5s;
	transition: all ease 0.5s;
}
.dialog.dialog__btn__main a:hover img,
.dialog.dialog__btn__main a.active img,
.dialog.dialog__btn__main span:hover img {
	opacity: 0;
}
.dialog.dialog__btn__main a:hover img + img,
.dialog.dialog__btn__main a.active img + img,
.dialog.dialog__btn__main span:hover img + img {
	opacity: 1 ;
}




@media (max-width: 480px) {
	.dialog.dialog__btn__main a {
		font-size:16px;
		padding-top:8px;
	}
}

