@charset "utf-8";

/*--------------------------------------------------------------------
	General
--------------------------------------------------------------------*/

html { height: 100%;}

body {
-webkit-text-size-adjust: 100%;
letter-spacing: 0;
font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
color: #222;
height: 100%;
}

@media screen and (max-width: 1024px) {

body {
-webkit-text-size-adjust: 100%;
letter-spacing: 0;
}

}

h1,h2,h3,h4,h5,h6 { font-weight: normal;}
ul { list-style: none; }

a         {text-decoration: none; color: #222; }
a:link    {text-decoration: none; color: #222; }
a:visited {text-decoration: none; color: #222; }
a:hover   {text-decoration: underline; color: #222; }
a:active  {text-decoration: underline; color: #222; }

.Mla { margin-left: auto !important; }
.Mra { margin-right: auto !important; }
.Blk { display:block !important; }
.Fl { float: left !important; }
img.Fr { float: right !important; display:block !important; }
img.Fl { float: left !important; display:block !important; }
img.Ct { display:block !important; margin-left:auto !important; margin-right:auto !important; }
.Fr { float: right !important; }
.Tl { text-align:left !important; }
.Tr { text-align:right !important; }
.Tc { text-align:center !important; }
.Vt { vertical-align:top !important; }
.Vm { vertical-align:middle !important; }
.Vb { vertical-align:bottom !important; }
.Ls0 { letter-spacing: 0px !important; }
.Ls-1 { letter-spacing: -1px !important; }
.Lh10 { line-height: 1.0em !important; }
.Lh11 { line-height: 1.1em !important; }
.Lh12 { line-height: 1.2em !important; }
.Lh13 { line-height: 1.3em !important; }
.Lh14 { line-height: 1.4em !important; }
.Lh15 { line-height: 1.5em !important; }
.Ofh { overflow: hidden; }

@media screen and (max-width: 1024px) {

.MlaS { margin-left: auto !important; }
.MraS { margin-right: auto !important; }
.BlkS { display:block !important; }
.FlS { float: left !important; }
img.FrS { float: right !important; display:block !important; }
img.FlS { float: left !important; display:block !important; }
img.CtS { display:block !important; margin-left:auto !important; margin-right:auto !important; }
.FrS { float: right !important; }
.TlS { text-align:left !important; }
.TrS { text-align:right !important; }
.TcS { text-align:center !important; }
.VtS { vertical-align:top !important; }
.VmS { vertical-align:middle !important; }
.VbS { vertical-align:bottom !important; }
.Ls0S { letter-spacing: 0px !important; }
.Ls-1S { letter-spacing: -1px !important; }
.Lh10S { line-height: 1.0em !important; }
.Lh11S { line-height: 1.1em !important; }
.Lh12S { line-height: 1.2em !important; }
.Lh13S { line-height: 1.3em !important; }
.Lh14S { line-height: 1.4em !important; }
.Lh15S { line-height: 1.5em !important; }
.OfhS { overflow: hidden; }

}

@media screen and (min-width: 1025px) {

.MlaP { margin-left: auto !important; }
.MraP { margin-right: auto !important; }
.BlkP { display:block !important; }
.FlP { float: left !important; }
img.FrP { float: right !important; display:block !important; }
img.FlP { float: left !important; display:block !important; }
img.CtP { display:block !important; margin-left:auto !important; margin-right:auto !important; }
.FrP { float: right !important; }
.TlP { text-align:left !important; }
.TrP { text-align:right !important; }
.TcP { text-align:center !important; }
.VtP { vertical-align:top !important; }
.VmP { vertical-align:middle !important; }
.VbP { vertical-align:bottom !important; }
.Ls0P { letter-spacing: 0px !important; }
.Ls-1P { letter-spacing: -1px !important; }
.Lh10P { line-height: 1.0em !important; }
.Lh11P { line-height: 1.1em !important; }
.Lh12P { line-height: 1.2em !important; }
.Lh13P { line-height: 1.3em !important; }
.Lh14P { line-height: 1.4em !important; }
.Lh15P { line-height: 1.5em !important; }
.OfhP { overflow: hidden; }

}

.BstGray { border-top: 1px solid #aaa; }
.BsrGray { border-right: 1px solid #aaa; }
.BsbGray { border-bottom: 1px solid #aaa; }
.BslGray { border-left: 1px solid #aaa; }
.BsGray { border: 1px solid #aaa; }

.Mb1em { margin-bottom: 1.2em !important; }
.Mb2em { margin-bottom: 2.2em !important; }
.Mb3em { margin-bottom: 3.2em !important; }
.Mb4em { margin-bottom: 4.2em !important; }

.FcDeepRed { color: #8C0000 !important; }
.FcDeepRed a         {text-decoration: none; color: #8C0000; }
.FcDeepRed a:link    {text-decoration: none; color: #8C0000; }
.FcDeepRed a:visited {text-decoration: none; color: #8C0000; }
.FcDeepRed a:hover   {text-decoration: underline; color: #8C0000; }
.FcDeepRed a:active  {text-decoration: underline; color: #8C0000; }

.FcRed { color: #FF0000 !important; }
.FcRed a         {text-decoration: none; color: #FF0000; }
.FcRed a:link    {text-decoration: none; color: #FF0000; }
.FcRed a:visited {text-decoration: none; color: #FF0000; }
.FcRed a:hover   {text-decoration: underline; color: #FF0000; }
.FcRed a:active  {text-decoration: underline; color: #FF0000; }

.FcRed2 { color: #B20000 !important; }
.FcRed2 a         {text-decoration: none; color: #B20000; }
.FcRed2 a:link    {text-decoration: none; color: #B20000; }
.FcRed2 a:visited {text-decoration: none; color: #B20000; }
.FcRed2 a:hover   {text-decoration: underline; color: #B20000; }
.FcRed2 a:active  {text-decoration: underline; color: #B20000; }

.FcOrange { color: #FF9226 !important; }
.FcOrange a         {text-decoration: none; color: #FF9226; }
.FcOrange a:link    {text-decoration: none; color: #FF9226; }
.FcOrange a:visited {text-decoration: none; color: #FF9226; }
.FcOrange a:hover   {text-decoration: underline; color: #FF9226; }
.FcOrange a:active  {text-decoration: underline; color: #FF9226; }

.FcPurple { color: #522678 !important; }
.FcPurple a         {text-decoration: none; color: #522678; }
.FcPurple a:link    {text-decoration: none; color: #522678; }
.FcPurple a:visited {text-decoration: none; color: #522678; }
.FcPurple a:hover   {text-decoration: underline; color: #522678; }
.FcPurple a:active  {text-decoration: underline; color: #522678; }

.FcWhite { color: #FFF !important; }
.FcWhite a         {text-decoration: none; color: #FFF; }
.FcWhite a:link    {text-decoration: none; color: #FFF; }
.FcWhite a:visited {text-decoration: none; color: #FFF; }
.FcWhite a:hover   {text-decoration: underline; color: #FFF; }
.FcWhite a:active  {text-decoration: underline; color: #FFF; }

.FcLightPurple { color: #E1D6EB !important; }
.FcLightPurple a         {text-decoration: none; color: #E1D6EB; }
.FcLightPurple a:link    {text-decoration: none; color: #E1D6EB; }
.FcLightPurple a:visited {text-decoration: none; color: #E1D6EB; }
.FcLightPurple a:hover   {text-decoration: underline; color: #E1D6EB; }
.FcLightPurple a:active  {text-decoration: underline; color: #E1D6EB; }

.FcDarkGray { color: #444 !important; }
.FcDarkGray a         {text-decoration: none; color: #444; }
.FcDarkGray a:link    {text-decoration: none; color: #444; }
.FcDarkGray a:visited {text-decoration: none; color: #444; }
.FcDarkGray a:hover   {text-decoration: underline; color: #444; }
.FcDarkGray a:active  {text-decoration: underline; color: #444; }

.FcLightGray { color: #777777 !important; }
.FcLightGray a         {text-decoration: none; color: #777777; }
.FcLightGray a:link    {text-decoration: none; color: #777777; }
.FcLightGray a:visited {text-decoration: none; color: #777777; }
.FcLightGray a:hover   {text-decoration: underline; color: #777777; }
.FcLightGray a:active  {text-decoration: underline; color: #777777; }

.FcBlue { color: #003296 !important; }
.FcBlue a         {text-decoration: none; color: #003296; }
.FcBlue a:link    {text-decoration: none; color: #003296; }
.FcBlue a:visited {text-decoration: none; color: #003296; }
.FcBlue a:hover   {text-decoration: underline; color: #003296; }
.FcBlue a:active  {text-decoration: underline; color: #003296; }

.BgLightPurple { background-color: #E9E9EF; }
.BgLightGray { background-color: #CBCBDA; }

.OnFade {
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
}

.OnFade:hover {
opacity: 0.7;
filter: alpha(opacity=70);
}

img {
vertical-align: middle;
}

.Hidden { display: none; }

.clear {
clear: both;
height: 0;
visibility: hidden;
font-size: 1px;
line-height: 0px;
}

.Cp { cursor: pointer; }

.DispTable {
display: table;
}

.DispTable > p,.DispTable > div,.DispTable > li,.DispTable > span {
display: table-cell;
}

@media screen and (max-width: 1024px) {

.DispTableS {
display: table;
}

.DispTableS > p,.DispTableS > div,.DispTableS > li,.DispTableS > span {
display: table-cell;
vertical-align: middle;
}

}

@media screen and (min-width: 1025px) {

.DispTableP {
display: table;
}

.DispTableP > p,.DispTableP > div,.DispTableP > li,.DispTableP > span {
display: table-cell;
vertical-align: middle;
}

}

@media screen and (min-width: 1025px) {

.DispNoneP { display: none; }

}

@media screen and (max-width: 1024px) {

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

.DispNoneS { display: none !important; }

.Link01 {
display: block;
padding: 8px 5px;
border: 1px solid #CCC;
background-color: #EFEFEF;
text-align: center;
}

.Link02 {
display: block;
padding: 5px;
border: 1px solid #CCC;
background-color: #FFF;
text-align: left;
font-size: 0.9em;
}

.Link03 {
display: block;
padding: 8px 5px;
border: 1px solid #D9D9D9;
background-color: #FFF;
text-align: center;
}

.Link04 {
display: block;
padding: 5px;
border: 1px solid #CCC;
background-color: #EFEFEF;
text-align: center;
}

}

/*--------------------------------------------------------------------
	Font
--------------------------------------------------------------------*/

@font-face {
font-family: 'Americana';
src: url('../font/Americana-Italic.ttf'),url('../font/Americana-Italic.woff');
}

.FontMincho {
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.FontAmericana {
font-family: Americana;
}

/*--------------------------------------------------------------------
	Container
--------------------------------------------------------------------*/

#Container {
width: 100%;
font-size: 0.86em;
line-height: 1.4em;
position: relative;
}

h1 {
width: 100%;
height: 0;
overflow: hidden;
text-indent: 100%;
white-space: nowrap;
}

@media screen and (max-width: 1024px) {

#Container {
font-size: 0.9em;
padding: 40px 0;
}

#Container.Check {
padding: 0;
}

}

/*--------------------------------------------------------------------
	Wrapper
--------------------------------------------------------------------*/

#Wrapper {
width: auto;
margin: 0 auto;
}

@media screen and (max-width: 1024px) {

#Wrapper {
width: auto;
}

}

/*--------------------------------------------------------------------
	Visual
--------------------------------------------------------------------*/

#Visual {
width: 100%;
overflow: hidden;
position: relative;
background-color: #000;
}

.VisualContents {
width: 100%;
position: absolute;
top: 0;
bottom: 0;
min-height: 950px;
}

.VisualInner {
min-height: 950px;
}

.VisualImg {
position: relative;
}

.VisualImg img {
width: 100%;
height: 100%;
position: relative;
}

.VisualTitle {
width: 635px;
height: 115px;
background-color: rgba(82,82,82,0.8);
position: absolute;
left: 0;
bottom: 300px;
z-index: 100;
}

.VisualLogoCatch {
position: absolute;
left: 100px;
top: 8px;
}

.VisualLogo {
position: absolute;
left: 210px;
top: 48px;
}

.VisualMenu {
position: absolute;
left: 400px;
bottom: 150px;
z-index: 100;
font-family: Americana;
font-size: 1.4em;
text-shadow: 0 0 2px #FFF, 0 0 3px #FFF;
-moz-text-shadow: 0 0 2px #FFF, 0 0 3px #FFF;
-webkit-text-shadow: 0 0 2px #FFF, 0 0 3px #FFF;
}

.VisualMenu a         {text-decoration: none; color: #222; }
.VisualMenu a:link    {text-decoration: none; color: #222; }
.VisualMenu a:visited {text-decoration: none; color: #555; }
.VisualMenu a:hover   {text-decoration: none; color: #555; }
.VisualMenu a:active  {text-decoration: none; color: #555; }

.VisualMenu a {
position: relative;
display: block;
transition-property: all;
transition: 0.2s linear;
-webkit-animation-duration: 1s;
-ms-animation-duration: 1s;
animation-duration: 1s;
}

.VisualMenu a:hover {
position: relative;
-webkit-transform: translateX(10px);
-moz-transform: translateX(10px);
-ms-transform: translateX(10px);
 -o-transform: translateX(10px);
}

.VisualMenu ul li {
margin-bottom: 10px;
}

.VisualReserve {
position: absolute;
right: 30px;
bottom: 20px;
z-index: 100;
}

.VisualBtn {
position: absolute;
left: 50%;
margin-left: -36px;
bottom: 20px;
z-index: 100;
}

@media screen and (max-width: 1024px) {

#Visual {
width: auto;
height: auto;
margin-left: auto;
margin-right: auto;
min-height: 0;
}

.VisualContents {
min-height: 0;
}

.VisualInner {
display: none;
min-height: 0;
}

}

/*--------------------------------------------------------------------
	Covid19
--------------------------------------------------------------------*/

.Covid19 {
background-color: rgba(0,0,0,0.3);
padding: 20px;
position: absolute;
top: 100px;
left: 20px;
max-width: 575px;
color: #FFF;
font-size: 1.0rem;
line-height: 1.6;
}

.Covid19Title {
font-size: 1.1rem;
font-weight: bold;
}

@media screen and (max-width: 1024px) {

.Covid19 {
background-color: rgba(0,0,0,0.5);
max-width: 100%;
padding: 15px;
position: relative;
top: auto;
left: auto;
font-size: 0.9rem;
}

}

/*--------------------------------------------------------------------
	Contents
--------------------------------------------------------------------*/

#Contents {
width: auto;
}

.HeaderPoint {
position: absolute;
top: 200px;
}

/*--------------------------------------------------------------------
	Header
--------------------------------------------------------------------*/

#Header {
position: fixed;
top: 0;
left: 0;
clear: both;
width: 100%;
height: 300px;
z-index: 1000;
display: none;
}

#Header.scroll {
display: block;
}

.HeaderInner {
margin: 0 auto;
position: relative;
}

.HeaderTop {
height: 45px;
background-color: #464646;
position: relative;
}

.HeaderTopInner {
width: 1200px;
min-height: 45px;
background-color: #464646;
position: absolute;
left: 50%;
margin-left: -600px;
z-index: 200;
}

.HeaderNewsTitle {
width: 130px;
height: 25px;
line-height: 23px;
color: #FFF;
text-align: center;
box-sizing: border-box;
border: 1px solid #FFF;
}

.HeaderNewsBox {
width: 800px;
color: #FFF;
}

.HeaderNewsTxt {
padding: 0 0 10px;
}

.HeaderNewsBtn {
cursor: pointer;
position: relative;
padding-right: 20px;
display: block;
}

.HeaderNewsMark {
position: relative;
}

.HeaderNewsBtn .OpenToggle:after {
display: block;
content: "";
width: 10px;
height: 10px;
position: absolute;
top: 9px;
left: 20px;
margin-top: -11px;
border-top: solid 2px #FFF;
border-right: solid 2px #FFF;
transform: rotate(135deg);
-webkit-transform: rotate(135deg);
-webkit-transition: 0.2s ease-in-out;
}

.HeaderNewsBtn .CloseToggle:after {
margin-top: -6px;
transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
}

.HeaderBottom {
height: 55px;
background-color: #FFF;
}

.HeaderBottom .DispTable{
width: 1200px;
margin: 0 auto;
}

.HeaderBottom .DispTable > div {
height: 55px;
vertical-align: middle;
}

.HeaderPoint {
position: absolute;
top: 100px;
}

@media screen and (max-width: 1024px) {

#Header {
display: none !important;
}

}

/*--------------------------------------------------------------------
	SpHeader
--------------------------------------------------------------------*/

.SpHeader {
width: 100%;
height: 40px;
position: fixed;
box-sizing: border-box;
top: 0;
left: 0;
z-index: 1000;
background-color: #FFF;
border-bottom: 2px solid #838383;
}

.SpHeaderLogo {
float: left;
margin: 9px 0 0 9px;
}

.SpHeaderLogo img {
width: 120px;
}

.SpHeaderBtn {
float: right;
margin: 4px 6px 0 0;
}


@media screen and (min-width: 1025px) {

.SpHeader {
display: none;
}

}

/*--------------------------------------------------------------------
	SpNews
--------------------------------------------------------------------*/

.SpNews {
background-color: #6A6A6A;
padding: 20px 10px;
color: #FFF;
margin-left: auto;
margin-right: auto;
box-sizing: border-box;
}

.SpNews ul > li {
padding: 10px 0;
border-bottom: 1px dotted #999;
}

.SpNews ul > li:last-child {
padding: 10px 0 0;
border-bottom: none;
}

@media screen and (min-width: 1025px) {

.SpNews {
display: none;
}

}

/*--------------------------------------------------------------------
	Information
--------------------------------------------------------------------*/

.InformationBox01 {
position: relative;
background-color: #464646;
}

.InformationBox01Inner {
position: relative;
width: 1200px;
margin: 0 auto;
}

.InformationPack01 {
width: 530px;
height: 450px;
box-sizing: border-box;
padding: 70px 20px 20px;
font-size: 1.2em;
line-height: 1.5em;
background-color: #464646;
position: relative;
color: #FFF;
}

.InformationPack01memo {
position: absolute;
right: 20px;
bottom: 20px;
color: #8C8C8C;
font-size: 1.4em;
}

@media screen and (max-width: 1024px) {

.InformationBox01Inner {
width: auto;
}

.InformationPack01 {
width: auto;
height: auto;
margin-left: auto;
margin-right: auto;
box-sizing: border-box;
padding: 20px 10px;
font-size: 1.0em;
line-height: 1.5em;
background-color: #464646;
position: relative;
color: #FFF;
}

.InformationPack01memo {
position: relative;
right: auto;
bottom: auto;
color: #8C8C8C;
font-size: 1.2em;
text-align: right;
}

}

/*--------------------------------------------------------------------
	Menu
--------------------------------------------------------------------*/

.MenuBox01 {
position: relative;
box-sizing: border-box;
background: url(../images/bg01.jpg) center top no-repeat;
background-attachment: fixed;
background-size: cover;
text-shadow: 0 0 2px #FFF, 0 0 3px #FFF;
-moz-text-shadow: 0 0 2px #FFF, 0 0 3px #FFF;
-webkit-text-shadow: 0 0 2px #FFF, 0 0 3px #FFF;
}

.MenuBox01wrap {
position: relative;
width: 1200px;
margin: 0 auto;
padding: 40px 20px;
}


.MenuBox01Inner {
position: relative;
padding: 80px 40px 20px;
}

.MenuBox01InnerPrice {
position: absolute;
top: 10px;
right: 152px;
width: 150px;
}

.MenuBox01InnerPrice02 {
position: absolute;
top: 10px;
right: 376px;
width: 150px;
}

.MenuBox01Inner p {
position: relative;
}

.MenuBox01Inner .MenuMemo {
position: absolute;
width: 200px;
text-align: left;
}

@media screen and (max-width: 1024px) {

.MenuBox01 {
margin-left: auto;
margin-right: auto;
padding: 20px 10px;
background: #EFF2F9;
text-shadow: none;
-moz-text-shadow: none;
-webkit-text-shadow:  none;
}

.MenuBox01wrap {
width: auto;
padding: 0;
}

.MenuBox01Inner {
position: relative;
padding: 0;
}

.MenuBox01InnerPrice,.MenuBox01InnerPrice02 {
display: none;
}

.MenuBox01Inner .MenuMemo {
position: relative;
width: auto;
text-align: center;
}

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

.MenuBox01Heading::before{
content: '';
position: absolute;
left: 50%;
bottom: -10px;
display: inline-block;
width: 50px;
height: 2px;
-moz-transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
transform: translate(-50%);
background-color: #666666;
}

}

/*--------------------------------------------------------------------
	Access
--------------------------------------------------------------------*/

.AccessBox01 {
position: relative;
box-sizing: border-box;
background: url(../images/bg02.jpg) center top repeat;
}

.AccessBox01Inner {
width: 1200px;
margin: 0 auto;
box-sizing: border-box;
padding: 40px;
}

.AccessBox01Map {
width: 800px;
margin-left: auto;
margin-right: auto;
}

.Ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}

.Ggmap iframe,
.Ggmap object,
.Ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

@media screen and (max-width: 1024px) {

.AccessBox01 {
margin-left: auto;
margin-right: auto;
padding: 20px 10px;
background: #F3F3F3;
}

.AccessBox01Inner {
width: auto;
padding: 0;
}

.AccessBox01Map {
width: auto;
}

}

/*--------------------------------------------------------------------
	Contact
--------------------------------------------------------------------*/

.ContactBox01 {
position: relative;
box-sizing: border-box;
background: #464646;
color: #FFF;
text-shadow: 0 0 6px #000, 0 0 32px #000;
-moz-text-shadow: 0 0 6px #000, 0 0 32px #000;
-webkit-text-shadow: 0 0 6px #000, 0 0 32px #000;
}

.ContactBox01Inner {
width: 1200px;
margin: 0 auto;
box-sizing: border-box;
padding: 60px 100px;
}

.ContactCheck01 > div {
border-bottom: 1px solid #FFF;
padding-bottom: 30px;
}

.ContactThank01 {
font-size: 1.4em;
line-height: 1.4em;
padding: 30px 0;
}

.ContactThank01 p {
margin-top: 1em;
}

select::-ms-expand {
display: none;
}

.TextboxBase01 {
height: 40px;
line-height: 40px;
box-sizing: border-box;
position: relative;
overflow: hidden;
display: inline-block;
background-color: #C2C2C2;
color: #222;
padding: 0 10px;
font-size: 1.16em;
cursor: text;
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
-webkit-transition: width 0;
-moz-transition: width 0;
transition: width 0;
border: none;
font-family: Americana;
}

.TextboxBase01:focus {
background-color: #ffffff;
}

.TextareaBase01 {
width: 100%;
height: 140px;
box-sizing: border-box;
position: relative;
overflow: hidden;
display: inline-block;
background-color: #C2C2C2;
color: #222;
padding: 10px;
font-size: 1.16em;
cursor: text;
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
-webkit-transition: width 0;
-moz-transition: width 0;
transition: width 0;
border: none;
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.TextareaBase01:focus {
background-color: #ffffff;
}

.SelectBase01 {
-webkit-appearance:none;
-moz-appearance:none;
appearance: none;
height: 40px;
line-height: 42px;
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
color: #222;
padding: 0 10px;
font-size: 1.16em;
box-sizing: border-box;
outline: none;
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
-webkit-transition: width 0;
-moz-transition: width 0;
transition: width 0;
position: relative;
cursor: pointer;
border: none;
background-color: #C2C2C2;
background-image: url("../images/icon_select01_off.png");
background-position: center right 10px;
background-size: 16px 10px;
background-repeat: no-repeat;
}

.SelectBase01:focus {
background-color: #FFF;
background-image: url("../images/icon_select01_on.png");
background-position: center right 10px;
background-size: 16px 10px;
background-repeat: no-repeat;
}

.ButtonCommon01 {
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
-webkit-transition: width 0;
-moz-transition: width 0;
transition: width 0;
cursor: pointer;
text-decoration: none;
display: inline-block;
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
font-size: 1.3em;
height: 44px;
line-height: 42px;
padding: 0 10px;
background-color: #C2C2C2;
border: 2px solid #777878;
font-weight: bold;
}

.ButtonCommon01:hover {
background-color: #FFF;
}

.ButtonCommon01:active {
position: relative;
top: 1px;
}

.ButtonCommon01:disabled {
background-color: #898989;
cursor: default;
color: #222;
top: 0 !important;
}


@media screen and (max-width: 1024px) {

.ContactBox01 {
margin-left: auto;
margin-right: auto;
padding: 20px 10px;
text-shadow: none;
-moz-text-shadow: none;
-webkit-text-shadow:  none;
}

.ContactBox01Inner {
width: auto;
padding: 0;
}

.g-recaptcha {
width: 303px;
margin: 0 auto;
}

.ContactThank01 {
font-size: 1.1em;
line-height: 1.3em;
padding: 10px 0;
}

.ContactThank01 p {
margin-top: 1em;
}

}

/*--------------------------------------------------------------------
	SpBottom
--------------------------------------------------------------------*/

.SpBottom {
width: 100%;
padding: 3px;
height: 40px;
position: fixed;
box-sizing: border-box;
bottom: 0;
left: 0;
z-index: 1000;
background-color: #FFF;
border-top: 2px solid #C2C2C2;
}

.SpBottomBtn {
width: 130px;
height: 26px;
float: left;
}

.SpBottomBtn a {
width: 130px;
height: 28px;
line-height: 26px;
margin: 2px 4px 0 0;
color: #FFF;
display: block;
text-align: center;
box-sizing: border-box;
background-color: #9B9B9B;
border: 1px solid #C2C2C2;
}

.SpBottom li {
padding: 4px 5px 0;
}

.SpBottom li a {
display: block;
width: 26px;
height: 26px;
line-height: 28px;
color: #FFF;
text-align: center;
-moz-border-radius: 100px;
-webkit-border-radius: 100px;
border-radius: 100px;
background-color: #9B9B9B;
font-size: 1.0em;
}

@media screen and (min-width: 1025px) {

.SpBottom {
display: none;
}

}


/*--------------------------------------------------------------------
	Animation
--------------------------------------------------------------------*/

.animation01,.animationFromRight,.animationFromLeft,.animationJustFade { visibility: hidden; }

.fadeInDown {
-webkit-animation-fill-mode:both;
-ms-animation-fill-mode:both;
animation-fill-mode:both;
-webkit-animation-duration:1s;
-ms-animation-duration:1s;
animation-duration:1s;
-webkit-animation-name: fadeInDown;
animation-name: fadeInDown;
visibility: visible !important;
}
@-webkit-keyframes fadeInDown {
0% { opacity: 0; -webkit-transform: translateY(-20px); }
100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInDown {
0% { opacity: 0; -webkit-transform: translateY(-20px); -ms-transform: translateY(-20px); transform: translateY(-20px); }
100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}

.fadeInFromRight {
-webkit-animation-fill-mode:both;
-ms-animation-fill-mode:both;
animation-fill-mode:both;
-webkit-animation-duration:1s;
-ms-animation-duration:1s;
animation-duration:1s;
-webkit-animation-name: fadeInFromRight;
animation-name: fadeInFromRight;
visibility: visible !important;
}
@-webkit-keyframes fadeInFromRight {
0% { opacity: 0; -webkit-transform: translateX(20px); }
100% { opacity: 1; -webkit-transform: translateX(0); }
}
@keyframes fadeInFromRight {
0% { opacity: 0; -webkit-transform: translateX(20px); -ms-transform: translateX(20px); transform: translateX(20px); }
100% { opacity: 1; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }
}

.fadeInFromLeft {
-webkit-animation-fill-mode:both;
-ms-animation-fill-mode:both;
animation-fill-mode:both;
-webkit-animation-duration:1s;
-ms-animation-duration:1s;
animation-duration:1s;
-webkit-animation-name: fadeInFromLeft;
animation-name: fadeInFromLeft;
visibility: visible !important;
}
@-webkit-keyframes fadeInFromLeft {
0% { opacity: 0; -webkit-transform: translateX(-20px); }
100% { opacity: 1; -webkit-transform: translateX(0); }
}
@keyframes fadeInFromLeft {
0% { opacity: 0; -webkit-transform: translateX(-20px); -ms-transform: translateX(-20px); transform: translateX(-20px); }
100% { opacity: 1; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }
}

.fadeInJustFade {
-webkit-animation-fill-mode:both;
-ms-animation-fill-mode:both;
animation-fill-mode:both;
-webkit-animation-duration:1s;
-ms-animation-duration:1s;
animation-duration:1s;
-webkit-animation-name: fadeInJustFade;
animation-name: fadeInJustFade;
visibility: visible !important;
}
@-webkit-keyframes fadeInJustFade {
0% { opacity: 0; -webkit-transform: translateX(0); }
100% { opacity: 1; -webkit-transform: translateX(0); }
}
@keyframes fadeInJustFade {
0% { opacity: 0; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }
100% { opacity: 1; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }
}

.fadeInJustFadeHead {
-webkit-animation-fill-mode:both;
-ms-animation-fill-mode:both;
animation-fill-mode:both;
-webkit-animation-duration:3s;
-ms-animation-duration:3s;
animation-duration:3s;
-webkit-animation-name: fadeInJustFade;
animation-name: fadeInJustFade;
visibility: visible !important;
}
@-webkit-keyframes fadeInJustFadeHead {
0% { opacity: 0; -webkit-transform: translateX(0); }
100% { opacity: 1; -webkit-transform: translateX(0); }
}
@keyframes fadeInJustFadeHead {
0% { opacity: 0; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }
100% { opacity: 1; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }
}

/*--------------------------------------------------------------------
	Colorbox
--------------------------------------------------------------------*/

.ShawdowHidden {
display: none;
}

.ShadowboxWrap {
height: 100%;
border: 5px solid #464646;
background-color: #FFF;
overflow: hidden;
}

.ShadowboxWrapLoading {
height: 100%;
overflow: hidden;
}

.ShadowboxWrap select::-ms-expand {
display:none;
}

.ShadowboxWrapContainer {
position: relative;
}

.ShadowboxWrapInner {
position: relative;
}

.ShadowboxWrapContent {
font-size: 0.86em;
line-height: 1.4em;
position: relative;
}

.ShadowboxWrapLineTitle {
background-color: #00C200;
color: #FFF;
height: 90px;
text-align: center;
font-size: 1.3em;
box-sizing: border-box;
padding: 20px 0 0;
}

.ShadowboxWrapContentInner {
padding: 15px;
}

.ShadowboxWrapLineChapter {
color: #00C100;
text-align: center;
font-size: 1.2em;
padding: 10px 0;
}

.ShadowboxWrapContentInner dl {
margin-top: 5px;
}

.ShadowboxWrapContentInner dl dt {
padding: 5px;
background-color: #00C200;
text-align: center;
color: #FFF;
margin-top: 10px;
}

.ShadowboxWrapContentInner dl dd {
padding: 10px;
text-align: center;
}

.ShadowboxWrapContentInner dl dd.QrLine {
padding: 10px 0;
text-align: center;
}

@media screen and (max-width: 1024px) {



}
