@charset "utf-8";

.md_btn_line { position: relative; display: inline-block; padding: 17px 32px 15px; font-size: 0.875em; text-align: center; color: #fff; border: solid 1px #fff; font-weight: 400; transition: all 250ms ease-out; }
.md_btn_line:hover {}

.md_btn_main { position: relative; display: inline-block; padding: 20px 0 19px; width: 460px; text-align: center; color: #222; border: solid 1px #222; font-weight: 400; font-size: 1.125em; z-index: 0; transition: all 50ms ease-out; overflow: hidden; }
.md_btn_main::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(250,250,250,0.5); transform: translateX(-100%); transition: transform 250ms ease-out; z-index: -1; }
.md_btn_main:hover { color: #222; }
.md_btn_main:hover::before { transform: translateX(0); }

.md_btn_reserve { position: relative; display: inline-block; padding: 21px 0 20px; width: 460px; text-align: center; color: #fff; background: #1f2748; font-weight: 400; font-size: 1.125em; overflow: hidden; z-index: 0; transition: color 250ms ease; }
.md_btn_reserve::before { content: ""; position: absolute; top: 0; left: -110%; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.1); /* 光っぽい薄い白 */ transform: skewX(-20deg); transition: left 0.4s ease; z-index: 1; }
.md_btn_reserve:hover::before { left: 110%; }
.md_btn_reserve span { position: relative; z-index: 2; }

.md_font_mincho { font-family: "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , "yu-mincho-pr6n"; }

.md_container { width: 1240px; padding: 0 20px; margin: 0 auto; }

.md_tategaki { writing-mode: vertical-rl; text-orientation: upright; }

.md_textLink { display: inline-block; text-decoration: underline; position: relative; padding-right: 25px; }
.md_textLink::before { content: ""; display: block; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 19px; height: 19px; border-radius: 10px; border: solid 1px #666; transition: .25s; }
.md_textLink::after { content: ""; display: block; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 19px; height: 19px; background: url("../../imageFile/global/icon_arrow_black.svg") no-repeat center; background-size: 5px auto; transition: .25s; }
.md_textLink:hover {}
.md_textLink:hover::before { right: -2px; }
.md_textLink:hover::after { right: -2px; }

/*============================
br
============================*/
.md_br_sp { display: none; }
.md_br_pc { display: inline; }

/*============================
ClearFix
============================*/
.clearFix::after { clear: both; display: block; content: ""; height: 0; line-height: 0; }