@charset "UTF-8";
/*-------------------
Default Settings
-------------------*/
* { box-sizing: border-box; }

html { font-size: 62.5%; position: relative; min-height: 100%; }

body { margin: 0; font-size: 1.6em; line-height: 1.6; font-family: Avenir, "Open Sans", "Helvetica Neue", Helvetica , Arial , Verdana, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; overflow-x: hidden; position: relative; }

.body { overflow: hidden; }

h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd { margin: 0; padding: 0; }

h1.meta-h1 { text-indent: 100%; white-space: nowrap; overflow: hidden; }

li { list-style-type: none; }

a { text-decoration: none; color: #333; }

img { max-width: 100%; height: auto; vertical-align: bottom; }

table { border-bottom: solid 1px #DBD3C1; border-right: solid 1px #DBD3C1; }

table th { font-weight: normal; text-align: left; background: #DBD3C1; padding: 11px 6px 11px 12px; border-top: solid 1px #fff; font-size: 12px; font-size: 1.2rem; }

table tr:first-child th { border-top: solid 1px #DBD3C1; }

table td { font-size: 12px; font-size: 1.2rem; border-top: solid 1px #DBD3C1; padding: 11px 20px; }

.cf { *zoom: 1; }

.cf:after { content: ""; display: block; width: 100%; clear: both; }

.vm:before { content: ""; display: inline-block; height: 100%; vertical-align: middle; }

.mincho { font-family: "游明朝", YuMincho, "ヒラギノ明朝 proN", "Hiragino Mincho Gothic Pro", serif; }

/*-------------------
header
-------------------*/
.headArea { min-width: 980px; background: url(../img/heading_bg.png) no-repeat center top; }

.headArea-inner { margin: 0 auto; width: 980px; zoom: 1; }

@media screen and (max-width: 1024px) { .headArea-inner { display: none; } }

.headArea .headerInfo { zoom: 1; padding: 15px 0 45px; position: relative; }

.headArea .logo { font-family: "a-otf-ryumin-pr6n"; font-size: 45px; font-size: 4.5rem; font-weight: normal; line-height: 1; padding-top: 20px; color: #333333; letter-spacing: 6px; text-align: center; }

.headArea .lang { width: 172px; height: 40px; overflow: hidden; background: #472c5f; position: absolute; top: 20px; right: 0; }

.headArea .lang select { width: 120%; height: 40px; color: #fff; line-height: 1.2; border-radius: 0; padding: 8px 15px 8px 17px; box-sizing: border-box; -webkit-appearance: button; -moz-appearance: button; appearance: button; background: url(../img/arr.png) no-repeat right 44px top 50%; border: none; }

.headArea .lang select:focus { outline: none; }

.headArea .lang option { background: #fff; height: 35px; color: #000; }

.en .logo { letter-spacing: 0; }

/*-------------------
pcNav
-------------------*/
.ja .english { display: none; }

.en .japan { display: none; }

.pcNav { width: 980px; margin: 0 auto; }

@media screen and (max-width: 1024px) { .pcNav { display: none; } }

.pcNav-list { position: relative; padding: 0; margin: 0; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-align-items: center; -ms-flex-align: center; align-items: center; z-index: 2; }

.pcNav-item { padding: 0 10px; list-style-type: none; box-sizing: border-box; width: 25%; text-align: center; position: relative; line-height: 1; }

.pcNav-item a { display: block; padding: 0 0 19px; }

.pcNav-item a:after { content: ''; display: block; position: absolute; width: 100%; height: 3px; left: 0; opacity: 0; bottom: -5px; background: #482C61; -webkit-transition: opacity .2s linear, bottom .2s ease-out; -moz-transition: opacity .2s linear, bottom .2s ease-out; -ms-transition: opacity .2s linear, bottom .2s ease-out; -o-transition: opacity .2s linear, bottom .2s ease-out; transition: opacity .2s linear, bottom .2s ease-out; }

.pcNav-item a:hover:after { content: ''; display: block; position: absolute; width: 100%; height: 3px; bottom: 10px; opacity: 1; background: #482C61; }

.pcNav-item:after { content: ''; display: inline-block; border-right: solid 1px #bbb; width: 1px; height: 14px; position: absolute; top: 3px; right: 0; }

.pcNav-item:first-child:before { content: ''; display: inline-block; border-right: solid 1px #bbb; width: 1px; height: 14px; position: absolute; top: 3px; left: 0; }

.pcNav .on a:after { content: ''; display: block; position: absolute; width: 100%; height: 3px; bottom: 10px; opacity: 1; background: #482C61; }

/*-------------------
spNav
-------------------*/
.lock { overflow: hidden; height: 100%; }

.spNav { display: none; padding: 1rem 0; background: #fff; position: fixed; width: 100%; transition: all 0.3s; z-index: 9999; }

@media screen and (max-width: 1024px) { .spNav { display: block; } }

.spNav-inner { width: 93%; margin: 0 auto; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; }

.spNav-ttl { font-family: "a-otf-ryumin-pr6n"; letter-spacing: 6px; font-size: 3rem; }

.spNav-ttl a { display: block; }

.spNav-torigger { position: relative; width: 55px; height: 55px; cursor: pointer; background: #472c5f; }

.spNav-torigger span { position: absolute; content: ''; right: 50%; width: 35px; height: 5px; margin-right: -17.5px; transition: all .4s; box-sizing: border-box; background: #fff; }

.spNav-torigger span:nth-of-type(1) { top: 10px; }

.spNav-torigger span:nth-of-type(2) { top: 25px; }

.spNav-torigger span:nth-of-type(3) { bottom: 10px; }

.spNav .activeon { background: #beb286; }

.spNav .activeon span:nth-of-type(1) { -webkit-transform: translateY(14px) rotate(-45deg); -ms-transform: translateY(14px) rotate(-45deg); transform: translateY(14px) rotate(-45deg); }

.spNav .activeon span:nth-of-type(2) { opacity: 0; }

.spNav .activeon span:nth-of-type(3) { -webkit-transform: translateY(-20px) rotate(45deg); -ms-transform: translateY(-16px) rotate(45deg); transform: translateY(-16px) rotate(45deg); }

.spNav-contents { position: fixed; top: 75px; right: -100%; width: 100%; height: auto; color: #fff; font-size: 2rem; overflow-y: scroll; z-index: 9998; background: #fff; }

@media screen and (max-width: 736px) { .spNav-contents { height: calc(100% - 75px); } }

.spNav-list { background: #472c5f; border: 2px solid #beb286; margin: 1rem; }

.spNav-item { border-bottom: 1px solid #beb286; }

.spNav-item a { display: block; color: #fff; padding: 2rem 3rem; position: relative; }

.spNav-item a:after { position: absolute; content: "\f105"; font-family: FontAwesome; line-height: 1; top: 50%; right: 3rem; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); font-size: 3rem; }

.spNav-item span { margin-right: 4rem; }

.spNav-item .sns { display: inline-block; width: 50px; margin-right: 3rem; }

.spNav-item .sns a { padding: 0; display: inline-block; }

.spNav-item .sns a:after { content: none; }

.spNav-lang { text-align: center; display: none; }

.spNav-lang_inner { width: 50%; background: #23162f; float: left; border-top: 1px solid #beb286; }

.spNav-lang_inner:nth-child(odd) { border-right: 1px solid #beb286; }

.spNav-lang_inner a:after { content: none; }

.langwrap { padding: 2rem 3rem; position: relative; cursor: pointer; }

.langwrap:after { position: absolute; transition: all 0.3s; content: "\f107"; font-family: FontAwesome; line-height: 1; top: 50%; right: 3rem; font-size: 3rem; margin-top: -15px; }

.lang_active:after { -webkit-transform: rotateZ(-180deg); -ms-transform: rotate(-180deg); transform: rotateZ(-180deg); }

.ja .lang_ja { background: #beb286; }

.en .spNav-ttl { letter-spacing: 0; font-size: 2.6rem; }

.en .lang_en { background: #beb286; }

.sns_wrap { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-align-items: center; -ms-flex-align: center; align-items: center; padding: 1rem 3rem; }

/*------------------------
sns
-------------------------*/
.karate-sns{position: absolute;top: 20px;left: 0;}
.karate-sns li{background-color: #482C61;display: inline-block;}
.karate-sns li a{display: block;text-align: center;width: 40px;height: 40px;padding-top: 6px;}
.spkarate-sns li{float: left;width: 33.333333%;}
.spkarate-sns li a:after{content: "";}
.spkarate-sns-fb{background-color: #1877F2;}
.spkarate-sns-is{background-color: #F00077;}
.spkarate-sns-tw{background-color: #1DA1F2;}

/*------------------------
roll
-------------------------*/
.simply-scroll-container { position: relative; }

.simply-scroll-clip { position: relative; overflow: hidden; }

.simply-scroll-list { overflow: hidden; margin: 0; padding: 0; }

.simply-scroll-list li { float: left; /* Horizontal scroll only */ padding: 0; margin: 0; width: 248px; margin-right: 20px; }

@media screen and (max-width: 768px) { .simply-scroll-list li { width: 200px; } }

.simply-scroll-list li img { display: block; }

.rollArea { padding: 45px 0; background: #eeeeee; border-top: dotted 1px #c1b997; }

/*-------------------
footer
-------------------*/
.footer { min-width: 980px; border-top: dotted 1px #c1b997; background: url(../img/footer_bg.jpg); }

@media screen and (max-width: 1024px) { .footer { width: 100%; min-width: 100%; } }

.footArea { width: 980px; padding: 20px 0; margin: 0 auto; text-align: center; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 1024px) { .footArea { width: 100%; padding: 0; display: block; } }

.footArea-inner { width: 48.5%; }

@media screen and (max-width: 1024px) { .footArea-inner { width: 100%; } }

.footArea a { text-decoration: none; }

@media screen and (max-width: 1024px) { .footArea a { display: block; padding: 2rem 3rem; position: relative; } }

.footArea a:hover { opacity: 0.7; text-decoration: underline; }

@media screen and (max-width: 1024px) { .footArea a:hover { text-decoration: none; } }

.footArea .logo { position: static; margin: 0 0 20px; text-align: left; font-family: "a-otf-ryumin-pr6n"; font-size: 40px; font-size: 4rem; line-height: 1; padding: 20px 0; border-bottom: 1px solid #000; color: #333333; letter-spacing: 6px; }

@media screen and (max-width: 1024px) { .footArea .logo { padding-top: 4rem; margin: 0; text-align: center; border-bottom: none; } }

.footArea .logo a { transition: all 0.3s; padding: 0; }

.footArea .logo a:hover { text-decoration: none; }

.footArea .footer_nav { padding: 0 0; line-height: 1; text-align: left; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

@media screen and (max-width: 1024px) { .footArea .footer_nav { margin-bottom: 2.5rem; } }

.footArea .footer_nav_item { width: 46%; padding-bottom: 20px; margin: 0 0 0 16px; font-size: 12px; font-size: 1.2rem; line-height: 1; vertical-align: top; list-style-type: disc; }

.footArea .footer_nav_item:first-child { border-left: none; }

.footArea .footer_nav_item a { color: #1f1f1f; text-decoration: underline; }

.footArea .footer_nav_item a:hover { text-decoration: none; }

@media screen and (max-width: 1024px) { .footArea .footer_nav_item a { position: relative; text-decoration: none; }
  .footArea .footer_nav_item a:after { position: absolute; content: "\f105"; font-family: FontAwesome; line-height: 1; top: 50%; right: 3rem; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); font-size: 3rem; }
  .footArea .footer_nav_item a:hover { text-decoration: underline; } }

@media screen and (max-width: 1024px) { .footArea .footer_nav_item { display: block; width: 100%; font-size: 2rem; border-left: none; text-align: left; padding-bottom: 0; border-bottom: 1px solid #dadada; }
  .footArea .footer_nav_item:first-child { border-top: 1px solid #dadada; } }

.footArea .banner { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-bottom: 40px; }

@media screen and (max-width: 1024px) { .footArea .banner { width: 92%; margin: 0 auto 4rem; } }

.footArea .banner li { width: 48.4%; }

.footArea .banner li:nth-child(1), .footArea .banner li:nth-child(2) { margin-bottom: 2rem; }

@media screen and (max-width: 1024px) { .footArea .banner li { width: 47%; } }

.footArea .banner a { padding: 0; transition: all 0.3s; }

.footArea .fb { width: 481px; height: 100%; border: #beb286 3px solid; }

@media screen and (max-width: 1024px) { .footArea .fb { margin: 0 auto 2.5rem; } }

@media screen and (max-width: 480px) { .footArea .fb { width: 90%; } }

.ja .en_fb { height: 100%; display: none; }

.en .ja_fb { height: 100%; display: none; }

.copy { background: url(../img/footer_copy_bg.gif); margin: 0; color: #fff; line-height: 1; padding: 6px 0; font-size: 0.725em; text-align: center; }

.en .footArea .logo { letter-spacing: 0; }

@media screen and (max-width: 414px) { .en .footArea .logo { font-size: 3.3rem; } }

/*-------------------
sec commons
-------------------*/
.page_ttl { background: #000; text-align: center; font-size: 30px; font-family: "a-otf-ryumin-pr6n"; font-weight: normal; text-shadow: 0 0 5px #FFF; line-height: 280px; margin: 0 auto; }

@media screen and (max-width: 1024px) { .page_ttl { width: calc(100% - 20px); } }

@media screen and (max-width: 767px) { .page_ttl { line-height: 40vw; } }

.breadcrumb-list { width: 980px; margin: 20px auto; display: -webkit-flex; display: -ms-flexbox; display: flex; line-height: 1; position: relative; }

@media screen and (max-width: 1024px) { .breadcrumb-list { display: none; } }

.breadcrumb-list:after { content: ''; width: 100vw; position: absolute; left: calc( ( 980px - 100vw ) / 2); bottom: -20px; border-bottom: dotted 1px #c1b997; }

.breadcrumb-list-item:not(:last-child):after { content: '>'; margin: 0 0.5em; }

.breadcrumb-list-item a { color: #472c5f; text-decoration: underline; }

.breadcrumb-list-item a:hover { text-decoration: none; }
