@import'https://fonts.googleapis.com/css?family=Lato:100,300,400,700,900';
@charset 'UTF-8';
html {
  box-sizing: border-box;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%
}
*, :before, :after {
  background-repeat: no-repeat;
  box-sizing: inherit
}
:before, :after {
  text-decoration: inherit;
  vertical-align: inherit
}
* {
  padding: 0;
  margin: 0
}
audio:not([controls]) {
  display: none;
  height: 0
}
hr {
  overflow: visible
}
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
  display: block
}
summary {
  display: list-item
}
small {
  font-size: 80%
}
[hidden], template {
  display: none
}
abbr[title] {
  border-bottom: 1px dotted;
  text-decoration: none
}
a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects
}
a:active, a:hover {
  outline-width: 0
}
code, kbd, pre, samp {
  font-family: monospace, monospace
}
b, strong {
  font-weight: bolder
}
dfn {
  font-style: italic
}
mark {
  background-color: #ff0;
  color: #000
}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}
sub {
  bottom: -.25em
}
sup {
  top: -.5em
}
input {
  border-radius: 0
}
button, [type=button], [type=reset], [type=submit], [role=button] {
  cursor: pointer
}
[disabled] {
  cursor: default
}
[type=number] {
  width: auto
}
[type=search] {
  -webkit-appearance: textfield
}
[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}
textarea {
  overflow: auto;
  resize: vertical
}
button, input, optgroup, select, textarea {
  font: inherit
}
optgroup {
  font-weight: 700
}
button {
  overflow: visible
}
button::-moz-focus-inner, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  border-style: 0;
  padding: 0
}
button:-moz-focusring, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText
}
button, html [type=button], [type=reset], [type=submit] {
  -webkit-appearance: button
}
button, select {
  text-transform: none
}
button, input, select, textarea {
  background-color: transparent;
  border-style: none;
  color: inherit
}
select {
  -moz-appearance: none;
  -webkit-appearance: none
}
select::-ms-expand {
  display: none
}
select::-ms-value {
  color: currentColor
}
legend {
  border: 0;
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}
img {
  border-style: none
}
progress {
  vertical-align: baseline
}
svg:not(:root) {
  overflow: hidden
}
audio, canvas, progress, video {
  display: inline-block
}
[aria-busy=true] {
  cursor: progress
}
[aria-controls] {
  cursor: pointer
}
[aria-disabled] {
  cursor: default
}
::-moz-selection {
  background-color: #b3d4fc;
  color: #000;
  text-shadow: none
}
::selection {
  background-color: #b3d4fc;
  color: #000;
  text-shadow: none
}
html {
  font-size: 10px;
  overflow-y: visible;
  font-family: Lato, 'ヒラギノ角ゴ Pro W3', Hiragino Kaku Gothic Pro, 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', MS PGothic, sans-serif
}
body {
  overflow-x: hidden;
  -webkit-tap-highlight-color: transparent;
  width: 100%
}
body ::-moz-selection {
  background-color: #ccc
}
body ::selection {
  background-color: #ccc
}
li {
  list-style: none
}
a {
  text-decoration: none
}
button {
  outline: none;
  -webkit-tap-highlight-color: transparent
}
.main {
  padding-top: 80px
}
::-webkit-input-placeholder {
  color: #888
}
::-moz-placeholder {
  color: #888
}
:-ms-input-placeholder {
  color: #888
}
::placeholder {
  color: #888
}
@-webkit-keyframes placeholder {
  0% {
    background-position: -468px 0
  }
  100% {
    background-position: 468px 0
  }
}
@keyframes placeholder {
  0% {
    background-position: -468px 0
  }
  100% {
    background-position: 468px 0
  }
}
@-webkit-keyframes headerOpen {
  0% {
    opacity: 0
  }
  60% {
    opacity: 1
  }
}
@keyframes headerOpen {
  0% {
    opacity: 0
  }
  60% {
    opacity: 1
  }
}
@-webkit-keyframes mvNavigator {
  20%, 30% {
    top: 100%
  }
  0%, 50%, 100% {
    top: 0
  }
}
@keyframes mvNavigator {
  20%, 30% {
    top: 100%
  }
  0%, 50%, 100% {
    top: 0
  }
}
@-webkit-keyframes calendarDateFadeIn {
  0% {
    opacity: 0;
    display: block
  }
  100% {
    opacity: 1
  }
}
@keyframes calendarDateFadeIn {
  0% {
    opacity: 0;
    display: block
  }
  100% {
    opacity: 1
  }
}
@-webkit-keyframes loading {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}
@keyframes loading {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}
@-webkit-keyframes loading2 {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }
  100% {
    -webkit-transform: rotate(220deg);
    transform: rotate(220deg)
  }
}
@keyframes loading2 {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }
  100% {
    -webkit-transform: rotate(220deg);
    transform: rotate(220deg)
  }
}
@-webkit-keyframes loading3 {
  0% {
    -webkit-transform: rotate(-140deg);
    transform: rotate(-140deg)
  }
  50% {
    -webkit-transform: rotate(-160deg);
    transform: rotate(-160deg)
  }
  100% {
    -webkit-transform: rotate(140deg);
    transform: rotate(140deg)
  }
}
@keyframes loading3 {
  0% {
    -webkit-transform: rotate(-140deg);
    transform: rotate(-140deg)
  }
  50% {
    -webkit-transform: rotate(-160deg);
    transform: rotate(-160deg)
  }
  100% {
    -webkit-transform: rotate(140deg);
    transform: rotate(140deg)
  }
}
.sw-Container {
  width: 100%;
  margin: 0 auto
}
.sw-Container_Inner {
  width: 100%;
  padding-right: 25px;
  padding-left: 25pX
}
.sw-SvgContainer {
  display: block;
  position: relative
}
.sw-SvgContainer:before {
  content: '';
  display: block;
  width: 100%;
  position: relative
}
.sw-Svg {
  max-width: 100%;
  width: 100%;
  max-height: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0
}
.sw-SROnly {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0
}
.btn-More {
  position: relative;
  padding-right: 38px;
  line-height: 40px;
  letter-spacing: .1em;
	border: none;
}
html[lang=en] .btn-More {
  letter-spacing: .02em
}
.btn-More:hover .btn-More_Text {
  color: #f1832c
}
.btn-More_Text {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 300;
  color: #333
}
.btn-More_Icon {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  border: 1px solid #f1832c;
  border-radius: 50%
}
.btn-More_Icon:before, .btn-More_Icon:after {
  content: '';
  display: block;
  position: absolute;
  background-color: #f1832c;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}
.btn-More_Icon:before {
  width: 16px;
  height: 1px
}
.btn-More_Icon:after {
  width: 1px;
  height: 16px
}
.buttons {
  padding: 0 25px 70px
}
.buttons .buttons-item {
  text-align: center;
  width: 140px;
  margin-top: 10px
}
.buttons .buttons-item:first-child {
  margin-top: 0
}
.buttons .buttons-item .anchor {
  display: block;
  border-radius: 15px;
  padding: 8px 10px;
  background-color: #f8f7f1;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  border-style: solid;
  border-width: 1px;
  border-color: transparent;
  font-size: 12px;
  font-size: 1.2rem
}
html[lang=en] .buttons .buttons-item .anchor {
  letter-spacing: .02em
}
.buttons .buttons-item .anchor:hover {
  background-color: #666;
  color: #fff
}
.buttons .buttons-item.register .anchor {
  background: #333;
  color: #fff;
  border-color: #333
}
.buttons .buttons-item.login .anchor {
  background: #f1832c;
  color: #fff;
  border-color: #f1832c
}
.buttons-login {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 29;
  width: 100%;
  padding: 20px 25px;
  border-top: 1px solid #ddd;
  background-color: #fff;
  box-sizing: border-box
}
.buttons-login .inner {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  padding: 0 18px
}
.buttons-login .buttons-item {
  margin-left: 10px;
  margin-top: 0
}
.buttons-login .buttons-item:first-child {
  margin-left: 0
}
.button-proceed {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  display: block;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  width: 100%;
  height: 60px;
  background: #f1832c;
  border-radius: 10px;
  transition-property: background, color;
  transition-duration: .4s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}
html[lang=en] .button-proceed {
  letter-spacing: .1em
}
.button-proceed:first-child {
  margin-top: 0
}
.button-proceed .text {
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400
}
html[lang=en] .button-proceed .text {
  letter-spacing: .02em
}
.st-Label_Wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}
.st-Label_Item {
  color: #888;
  background-color: #fff;
  border: solid 1px #888;
  border-radius: 1.1em;
  display: inline-block;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.83333;
  text-align: center;
  min-width: 80px;
  padding: 0 .83333em;
  margin: 0 10px 10px 0
}
.st-Label_Item.is-held {
  background-color: #f1832c;
  border-color: #f1832c;
  color: #fff
}
.st-Label_Item.is-fee {
  border-color: #f1832c;
  color: #f1832c
}
.st-Label_Item.is-next {
  background-color: #888;
  color: #fff
}
.st-Label_Item.is-free {
  border-color: #888
}
.st-Label_Item.is-event {
  border-color: #f1832c;
  color: #f1832c
}
.sw-Accordion {
  position: relative;
  width: 140px;
  z-index: 10
}
.sw-Accordion:after {
  content: '';
  display: block;
  position: absolute;
  right: 20px;
  top: 10px;
  width: 10px;
  height: 10px;
  pointer-events: none;
  border-right: 1px solid #888;
  border-bottom: 1px solid #888;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}
.sw-Accordion.is-active .sw-Accordion_Inner, .sw-Accordion.is-active .sw-Accordion_Title {
  color: #fff
}
.sw-Accordion.is-active .sw-Accordion_Inner {
  background-color: #666;
  z-index: 99
}
.sw-Accordion.is-active:after {
  border-right-color: #fff;
  border-bottom-color: #fff;
  z-index: 99
}
.sw-Accordion-active:after {
  border-right-color: #fff;
  border-bottom-color: #fff;
  z-index: 99
}
.sw-Accordion_Inner {
  cursor: pointer;
  background-color: #f8f7f1;
  border-radius: 15px;
  font-weight: 300;
  text-align: center;
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  transition-property: background;
  transition-duration: .5s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}
.sw-Accordion_Inner-active {
  background-color: #666;
  color: #fff;
  z-index: 99
}
.sw-Accordion_Title {
  display: block;
  border-radius: 15px;
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 300;
  letter-spacing: .10714em;
  padding: 8px 10px 10px
}
html[lang=en] .sw-Accordion_Title {
  letter-spacing: .1em
}
.sw-Accordion_Title-active {
  color: #fff
}
.sw-Accordion_TitleLabel {
  padding: 0 10px 0 0
}
.sw-Accordion_Lists {
  display: none
}
.sw-Accordion_List {
  padding: 7px 0 0
}
.sw-Accordion_List:last-child {
  padding: 7px 0 10px
}
.sw-Accordion_List-selected {
  cursor: default;
  pointer-events: none
}
.sw-Accordion_List-selected .sw-Accordion_Text {
  color: #333
}
.sw-Accordion_Text {
  display: block;
  color: #ccc;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 300;
  letter-spacing: .10714em;
  padding: 0 10px 0 0
}
html[lang=en] .sw-Accordion_Text {
  letter-spacing: .1em
}
.sw-Accordion_Text:hover {
  color: #fff
}
.sw-Accordion_Overlay {
  z-index: 98;
  margin: auto;
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  display: none
}
.is-active .sw-Accordion_Overlay {
  display: block
}
.sw-Accordion_Overlay-active {
  display: block
}
.sw-Loading {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  background-color: #fff;
  z-index: 999
}
.sw-Loading_Logo {
  width: 289px;
  height: 37px;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto
}
.sw-Loading_Image {
  width: 100%;
  height: auto
}
.level-item {
  margin: 60px 0 0
}
.level-item:first-child {
  margin: 0
}
.level-item .head {
  background-color: #f8f7f1;
  position: relative
}
.level-item .head:after {
  content: '';
  display: block;
  padding: 56.25% 0 0
}
.level-item .body {
  margin: 30px 0 0
}
.level-item .image {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0)
}
.level-item .image.lazy {
  width: 100%;
  height: 100%
}
.level-item .lead {
  color: #888;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 300;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 6px 0 0
}
html[lang=en] .level-item .lead {
  letter-spacing: .02em
}
.level-item .title {
  color: #333;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 300;
  letter-spacing: .09375em;
  line-height: 1.625;
  margin: 8px 0 0
}
html[lang=en] .level-item .title {
  letter-spacing: .1em
}
.level-item .text {
  border-bottom: 1px dotted #333
}
.level-item .term {
  color: #888;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 10px 0 0
}
html[lang=en] .level-item .term {
  letter-spacing: .02em
}
.level-item .description {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  max-height: 5.5em;
  margin: 18px 0 0;
  overflow: hidden
}
html[lang=en] .level-item .description {
  letter-spacing: .02em
}
.level-item .ellipsis {
  display: block;
  color: #f1832c;
  font-size: 12px;
  font-size: 1.2rem;
  margin: 5px 0 0
}
.st-event_List {
  margin: 0
}
.st-event_Item {
  margin: 0 0 60px
}
.st-event_Item:last-child {
  margin: 0
}
.st-event_Item.is-accordion-open .st-event_Btn:before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}
.st-event_Item.is-accordion-open .st-event_Btn:after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}
.st-event_Header {
  background-color: #f8f7f1;
  display: -webkit-flex;
  display: flex
}
.st-event_ImgWrap {
  width: 56.25%;
  height: 100%;
  position: relative;
  overflow: hidden
}
.st-event_ImgWrap:after {
  content: '';
  display: block;
  padding: 100% 0 0
}
.st-event_Img {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0)
}
.st-event_Img.lazy {
  width: 100%;
  height: 100%
}
.st-event_Alt {
  display: block;
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .1em;
  text-align: center;
  width: 100%;
  padding: 0 1em;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
html[lang=en] .st-event_Alt {
  letter-spacing: .02em
}
.st-event_Label {
  width: 43.75%;
  position: relative
}
.st-event_LabelList {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  padding: 20px
}
.st-event_LabelItem {
  margin: 0 0 10px
}
.st-event_ContentInner {
  padding: 25px 0 16px
}
.st-event_Lead {
  color: #888;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 300;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 0 0 10px
}
html[lang=en] .st-event_Lead {
  letter-spacing: .02em
}
.st-event_Title {
  color: #333;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 300;
  letter-spacing: .09375emr;
  line-height: 1.625;
  margin: 0 0 10px
}
.st-event_Term {
  color: #888;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 0 0 20px
}
html[lang=en] .st-event_Term {
  letter-spacing: .02em
}
.st-event_Details {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  overflow: hidden
}
html[lang=en] .st-event_Details {
  letter-spacing: .02em
}
.st-event_Description {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  max-height: 5.5em;
  overflow: hidden
}
html[lang=en] .st-event_Description {
  letter-spacing: .02em
}
.st-event_Btn {
  color: #f1832c;
  border-bottom: 1px solid #f1832c;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: .10714em;
  text-align: left;
  width: 100%;
  padding: 8px 0;
  position: relative
}
.st-event_Btn:before, .st-event_Btn:after {
  content: '';
  display: block;
  position: absolute;
  width: 12px;
  height: 1px;
  background-color: #f1832c;
  bottom: 15px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-backface-visibility: hidden
}
.st-event_Btn:before {
  right: 15px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}
.st-event_Btn:after {
  right: 7px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}
html[lang=en] .st-event_Btn {
  letter-spacing: .1em
}
.st-event_Btn:before, .st-event_Btn:after {
  transition-property: opacity, color;
  transition-duration: .25s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1);
  transition-delay: .1s
}
.st-event_Btn:hover {
  color: #333;
  border-bottom-color: #333
}
.st-event_Btn:hover:before, .st-event_Btn:hover:after {
  background-color: #333
}
.st-event_Summary {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  height: 0
}
html[lang=en] .st-event_Summary {
  letter-spacing: .02em
}
.st-event_SummaryInner {
  padding: 1.83333em 0 0
}
.st-event_SummaryUnit {
  margin: 0 0 1.83333em
}
.st-event_SummaryUnit:last-child {
  margin: 0
}
.st-event_SummaryTitle {
  font-weight: 600
}
.st-event_SummaryDefine {
  font-weight: 300
}
.st-event_SummaryDefine a {
  border-bottom: 1px dotted #333;
  color: #333
}
.st-event_SummaryDefine a:hover {
  border-bottom: 1px dotted #f1832c;
  color: #f1832c
}
.sw-Calendar {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 29;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: center;
  align-items: center;
  width: 100%;
  background-color: #f1832c;
  padding: 16px 25px;
  border: none;
  border-top: 1px solid #fff;
  color: #fff
}
.sw-Calendar_Detail {
  line-height: 1
}
.sw-Calendar_Month, .sw-Calendar_Day {
  font-size: 20px;
  font-size: 2rem;
  color: #fff
}
.sw-Calendar_State {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 200;
  padding-left: 15px;
  color: #fff;
  line-height: 1
}
.sw-Calendar_Icon {
  position: absolute;
  right: 25px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
.sw-Calendar .icon-slash {
  width: 16px;
  height: 14px;
  margin: 0 5px
}
.sw-Calendar .icon-calender {
  width: 16px;
  height: 16px
}
.header {
  width: 100%;
  height: 80px;
  letter-spacing: .1em;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 30;
  transition-property: top;
  transition-duration: .9s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}
.header.is-hide {
  top: -80px
}
.header.is-open {
  height: 100%
}
.header-Wrapper {
  height: 100%;
  background-color: #fff;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%
}
.header-Head {
  padding: 22px 25px 20px;
  z-index: 33
}
.header-Logo {
  width: calc(100% - 50px);
  max-width: 275px
}
.header-Logo_Inner {
  display: block;
  line-height: 1
}
.header-Logo .logo-image {
  width: 100%;
  height: auto
}
.header-MenuArea {
  position: absolute;
  right: 20px;
  top: 20px;
  z-index: 33;
  width: 40px;
  height: 40px;
  cursor: pointer
}
.header-MenuBtn {
  overflow: hidden;
  position: relative;
  width: 40px;
  height: 40px
}
.header-MenuBtn_Line {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
  display: block;
  width: 20px;
  height: 2px;
  background-color: #888;
  transition-property: background;
  transition-duration: .2s;
  transition-timing-function: cubic-bezier(.95, .05, .795, .035)
}
.is-open .header-MenuBtn_Line {
  background-color: transparent;
  transition-property: top, background;
  transition-duration: .75s;
  transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}
.header-MenuBtn_Line:before, .header-MenuBtn_Line:after {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #888;
  transition-property: top, -webkit-transform;
  transition-property: transform, top;
  transition-property: transform, top, -webkit-transform;
  transition-duration: .3s;
  transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}
.is-open .header-MenuBtn_Line:before, .is-open .header-MenuBtn_Line:after {
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  transition-duration: .3s;
  transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}
.header-MenuBtn_Line:before {
  top: -6px
}
.is-open .header-MenuBtn_Line:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 0
}
.header-MenuBtn_Line:after {
  -webkit-transform: rotate(0);
  transform: rotate(0);
  top: 6px
}
.is-open .header-MenuBtn_Line:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 0
}
.header-MenuText {
  display: none
}
.header-Inner {
  position: fixed;
  left: 0;
  top: 80px;
  right: 0;
  bottom: 0;
  margin: 0;
  z-index: 32;
  width: 100%;
  /*overflow-y: hidden;*/
  opacity: 0;
  padding: 22px 25px;
  visibility: hidden;
  -webkit-overflow-scrolling: touch;
  transition-property: opacity;
  transition-duration: .9s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}
.is-open .header-Inner {
  overflow-y: scroll;
  height: 100%;
  opacity: 1;
  padding-bottom: 100px;
  visibility: visible;
  transition-property: opacity;
  transition-duration: .9s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}
.header-Util {
  z-index: 36
}
.header-Util_Item {
  display: none
}
.header-Util_Lang {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  font-weight: 200
}
.header-Util_Lang-wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center
}
.header-Util_Lang-slash {
  padding-top: 5px
}
.header-Util_Lang-slash .icon-slash {
  width: 12px;
  height: 12px;
  margin: 0 9px
}
.header-Util_Lang-slash .icon-slash path {
  stroke: #888
}
.header-Util_Lang-link {
  font-weight: 300;
  font-size: 14px;
  font-size: 1.4rem;
  color: #333
}
html[lang=en] .header-Util_Lang-link {
  letter-spacing: .1em
}
.header-Util_Lang-link:hover, .header-Util_Lang-link.is-active {
  color: #f1832c
}
.header-Util_Lang-other {
  opacity: 1;
  transition: opacity .4s cubic-bezier(.39, .575, .565, 1);
  margin-left: 30px
}
.header-Util_Lang-other:hover {
  opacity: .8
}
.header-Util_Lang-linkOther {
  font-weight: 300;
  font-size: 14px;
  font-size: 1.4rem;
  color: #333;
  letter-spacing: .1em
}
.header-Util_Lang-linkOther:hover {
  color: #f1832c
}
.header-Util_Lang-item.is-active .header-Lang_Link {
  color: #f1832c
}
.header-Util_Item, .header-Util_Lang-wrap, .header-Util_Lang-other {
  transition-property: none;
  transition-duration: 0;
  transition-timing-function: ease;
  transition-delay: 0
}
.header-Util_Search {
  position: relative;
  margin-top: 33px;
  width: 100%;
  height: 40px
}
.header-Util_Search-icon {
  position: absolute;
  left: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 35
}
.header-Util_Search-icon .icon-search {
  opacity: 1;
  transition: opacity .4s cubic-bezier(.39, .575, .565, 1)
}
.header-Util_Search-icon .icon-search:hover {
  opacity: .8
}
.header-Util_Search-input {
  width: 100%;
  height: 100%;
  padding: 10px 10px 10px 40px;
  font-size: 12px;
  font-size: 1.2rem;
  outline: none;
  background-color: #f8f7f1
}
html[lang=en] .header-Util_Search-input {
  letter-spacing: .02em
}
.header-Util_Search-form .icon-search {
  font-size: 0;
  display: none
}
.header-Util_Search-close {
  overflow: hidden;
  position: absolute;
  z-index: 33;
  width: 20px;
  height: 20px;
  top: 50%;
  right: 10px;
  -webkit-transform: translate3d(0, -50%, 0);
  transform: translate3d(0, -50%, 0);
  opacity: 0
}
.is-search-open .header-Util_Search-close {
  opacity: 1;
  transition-property: opacity;
  transition-duration: 1s;
  transition-timing-function: cubic-bezier(.19, 1, .22, 1);
  transition-delay: .8s
}
.header-Menu {
  display: none;
  position: absolute;
  left: 174px;
  top: 84px
}
.header-Menu .header-Menu_Link {
  display: block;
  color: #888;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  padding: 10px 13px
}
html[lang=en] .header-Menu .header-Menu_Link {
  letter-spacing: .02em
}
.header-Menu .header-Menu_Link:hover {
  color: #f1832c
}
.header-Menu .header-Menu_Link.is-active {
  color: #f1832c
}
.header-Links {
  background-color: #fff;
  width: 100%;
  margin: 47px 0 0;
  visibility: hidden
}
.is-open .header-Links {
  -webkit-animation-name: headerOpen;
  animation-name: headerOpen;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: cubic-bezier(.39, .575, .565, 1);
  animation-timing-function: cubic-bezier(.39, .575, .565, 1);
  visibility: visible
}
.header-Links .header-Links_Wrap {
  border-top: 1px solid #f1832c
}
.header-Links .header-Links_Item {
  position: relative;
  padding: 18px 0 17px;
  border-bottom: 1px solid #ddd
}
.header-Links .header-Links_Item:last-child {
  border-bottom: 0
}
.header-Links .header-Links_Item.has-child.is-active:before {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}
.header-Links .header-Links_Item.has-child:before {
  content: '';
  display: block;
  position: absolute;
  right: 18px;
  top: 20px;
  width: 24px;
  height: 14px;
  pointer-events: none;
  background: url(/assets/images/icon_arrow_down.svg) no-repeat 0 0;
  transition: -webkit-transform .4s cubic-bezier(.25, .46, .45, .94);
  transition: transform .4s cubic-bezier(.25, .46, .45, .94);
  transition: transform .4s cubic-bezier(.25, .46, .45, .94), -webkit-transform .4s cubic-bezier(.25, .46, .45, .94)
}
.header-Links .header-Links_Link {
  display: block;
  color: #333;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: .1em;
  cursor: pointer
}
.header-Links .header-Links_Link.is-active {
  color: #f1832c
}
.header-Links .header-Links_SecondLevel {
  max-height: 0;
  overflow: hidden
}
.header-Links .header-Links_Item-second:first-child {
  padding: 18px 0 0
}
.header-Links .header-Links_Item-second:first-child .header-Links_Link-child {
  padding: 0
}
.header-Links .header-Links_Item-second:last-child {
  padding: 0 0 22px
}
.header-Links .header-Links_Link-child {
  display: block;
  color: #888;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 300;
  padding: 12px 0 0
}
html[lang=en] .header-Links .header-Links_Link-child {
  letter-spacing: .1em
}
.footer {
  padding: 41px 26px 120px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  border-top: 1px solid #f1832c;
  letter-spacing: .1em
}
.footer-Content {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}
.footer-Sns {
  display: -webkit-flex;
  display: flex;
  padding-left: 4px
}
.footer-Sns_Item .icon-twitter, .footer-Sns_Item .icon-fb {
  width: 32px;
  height: 32px
}
.footer-Sns_Link .icon-twitter path, .footer-Sns_Link .icon-fb path {
  transition: fill .25s cubic-bezier(.25, .46, .45, .94)
}
.footer-Sns_Link:hover .icon-twitter path, .footer-Sns_Link:hover .icon-fb path {
  fill: #666;
  transition: fill .25s cubic-bezier(.25, .46, .45, .94)
}
.footer-Sns_Item + .footer-Sns_Item {
  margin-left: 16px
}
.footer-Links {
  display: none
}
.footer-Links_Link {
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  color: #888;
  padding: 12px 13px
}
html[lang=en] .footer-Links_Link {
  letter-spacing: .02em
}
.footer-Links_Wrap {
  display: -webkit-flex;
  display: flex
}
.footer-Pagetop {
  display: block;
  position: relative;
  padding: 10px 35px 10px 10px;
  font-size: 12px;
  font-size: 1.2rem;
  color: #888
}
html[lang=en] .footer-Pagetop {
  letter-spacing: .02em
}
.footer-Pagetop:hover {
  color: #f1832c
}
.footer-Pagetop:before, .footer-Pagetop:after {
  content: '';
  display: block;
  position: absolute;
  width: 16px;
  height: 1px;
  background-color: #f1832c;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
.footer-Pagetop:before {
  right: 11px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}
.footer-Pagetop:after {
  right: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}
.footer-Copy {
  color: #333;
  margin-top: 33px;
  font-size: 10px;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.5;
  width: 100%
}
html[lang=en] .footer-Copy {
  letter-spacing: .02em
}
.footer-Copy_Text {
  font-size: 100%;
  letter-spacing: .1em
}
html[lang=en] .footer-Copy_Text {
  letter-spacing: .02em
}
.whatson .sw-Accordion, .exhibition_event .sw-Accordion {
  width: 100%
}
.head-Sort {
  padding: 20px 25px 0
}
.head-Sort_Title {
  letter-spacing: .1em;
  margin: 0 0 30px
}
.head-Sort_Title-en, .head-Sort_Title-sub {
  display: inline-block
}
.head-Sort_Title-en {
  color: #333;
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  padding-right: 20px
}
html[lang=en] .head-Sort_Title-en {
  letter-spacing: .1em
}
.head-Sort_Title-sub {
  color: #333;
  font-weight: 400;
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 8px
}
html[lang=en] .head-Sort_Title-sub {
  letter-spacing: .02em
}
.head-Sort_Body {
  max-width: 340px
}
.head-Sort_BodyInner {
  display: -webkit-flex;
  display: flex
}
.head-Sort_Genre {
  -webkit-flex-basis: 50%;
  flex-basis: 50%;
  -webkit-flex-grow: 1;
  flex-grow: 1;
  -webkit-order: 0;
  order: 0
}
.head-Sort_GenreInner {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -10px 0 0
}
.head-Sort_Btn + .head-Sort_Btn .head-Sort_BtnInner {
  padding: 10px 0 0 10px
}
.head-Sort_Btn:nth-child(odd) .head-Sort_BtnInner {
  padding: 10px 0 0
}
.head-Sort_Btn:first-child .head-Sort_BtnInner {
  padding: 10px 0 0
}
.head-Sort_Year {
  -webkit-flex-basis: 50%;
  flex-basis: 50%;
  -webkit-order: 1;
  order: 1;
  position: relative
}
.head-Sort_Year:before {
  background-color: #ddd;
  content: '';
  display: block;
  width: 1px;
  height: 100%;
  position: absolute;
  left: 20px;
  top: 0
}
.head-Sort_Year + .head-Sort_Genre .head-Sort_BtnInner {
  padding: 10px 0 0 10px
}
.head-Sort_Year + .head-Sort_Genre .head-Sort_GenreInner {
  -webkit-flex-direction: column;
  flex-direction: column
}
.head-Sort_YearInner {
  padding: 0 0 0 40px
}
.head-Sort_Label-btn {
  display: inline-block;
  background-color: #f8f7f1;
  border-radius: 15px;
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .1em;
  text-align: center;
  width: 100%;
  min-width: 140px;
  padding: 8px 10px;
	border: none;
}
html[lang=en] .head-Sort_Label-btn {
  letter-spacing: .02em
}
.head-Sort_Label-btn.is-active {
  background-color: #666;
  color: #fff
}
.head-Sort_LabelPhrase {
  display: inline-block
}
.head-Sort.head-Sort--type01 {
  display: block;
  padding: 20px 25px 0
}
.head-Sort.head-Sort--type01 .head-Sort_Title {
  width: 100%;
  padding-right: 0
}
html[lang=en] .head-Sort.head-Sort--type01 .head-Sort_Title {
  letter-spacing: .1em
}
.head-Sort.head-Sort--type01 .head-Sort_Title .head-Sort-text {
  color: #333;
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem
}
.top {
  letter-spacing: .1em
}
.top .header {
  border-bottom: 0
}
.tp-MainVisual {
  position: relative;
  background-color: #f8f7f1;
  min-height: 480px
}
.tp-MainVisual_List {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 10
}
.tp-MainVisual_List:nth-child(n+2) {
  z-index: 1;
  display: none
}
.tp-MainVisual_Graphic {
  width: 100%;
  background-position: 50% 50%;
  background-size: cover;
  min-height: 240px
}
.tp-MainVisual_Item {
  position: relative;
  padding: 18px 25px 40px;
  background-color: #f8f7f1;
  min-height: 240px
}
.tp-MainVisual_Category {
  font-size: 12px;
  font-size: 1.2rem;
  color: #888;
  letter-spacing: .1em
}
html[lang=en] .tp-MainVisual_Category {
  letter-spacing: .02em
}
.tp-MainVisual_Heading {
  display: block;
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  text-decoration: none;
  margin-top: 12px
}
.tp-MainVisual_Term {
  font-size: 12px;
  font-size: 1.2rem;
  color: #888;
  margin-top: 10px
}
html[lang=en] .tp-MainVisual_Term {
  letter-spacing: .02em
}
.tp-MainVisual_Img {
  width: 100%;
  height: auto
}
.tp-MainVisual_Indicators {
  position: absolute;
  left: 25px;
  bottom: 5%;
  z-index: 11
}
.tp-MainVisual_Indicator {
  display: inline-block;
  width: 10px;
  height: 10px;
  border: 1px solid #f1832c;
  border-radius: 50%;
  background-color: #fff;
  cursor: pointer
}
.tp-MainVisual_Indicator + .tp-MainVisual_Indicator {
  margin-left: 5px
}
.tp-MainVisual_Indicator.is-active {
  background-color: #f1832c
}
.tp-MainVisual_ScrollBtn {
  display: none
}
.tp-NewsTicker {
  padding: 20px 25px;
  border-bottom: 1px solid #f1832c;
  z-index: 10;
  background-color: #fff
}
.tp-NewsTicker_Heading {
  font-size: 14px;
  font-size: 1.4rem;
  color: #f1832c;
  font-weight: 600
}
.tp-NewsTicker_Items {
  overflow: hidden;
  position: relative;
  margin-top: 10px;
  min-height: 45px
}
.tp-NewsTicker_Item {
  position: absolute;
  left: 0;
  top: 0
}
.tp-NewsTicker_Link {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1.8;
  color: #333
}
.tp-NewsTicker_Link:hover {
  color: #f1832c
}
.tp-WhatsOn {
  position: relative;
  padding: 63px 25px 70px
}
.tp-WhatsOn_Title-en, .tp-WhatsOn_Title-sub {
  letter-spacing: .1em
}
.tp-WhatsOn_Title-en {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  display: block;
  color: #333
}
html[lang=en] .tp-WhatsOn_Title-en {
  letter-spacing: .1em
}
.tp-WhatsOn_Title-sub {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  display: block;
  margin-top: 8px;
  color: #333
}
html[lang=en] .tp-WhatsOn_Title-sub {
  letter-spacing: .02em
}
.tp-WhatsOn_More {
  position: absolute;
  right: 30px;
  top: 80px
}
.tp-WhatsOn_Items {
  margin-top: 37px
}
.tp-News {
  position: relative;
  padding: 74px 25px 75px;
  background-color: #f8f7f1
}
.tp-News_Title-en {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  display: block;
  color: #333
}
.tp-News_Title-sub {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  display: block;
  margin-top: 8px;
  color: #333
}
.tp-News_More {
  position: absolute;
  right: 29px;
  top: 79px
}
.tp-News_Notice {
  margin-top: 35px
}
.tp-News_Notice-head {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .1em;
  color: #333
}
.tp-News_Notice-content {
  margin-top: 11px;
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  line-height: 1.8
}
.tp-News_Item {
  padding: 31px 0 5px
}
.tp-News_Item-head {
  font-weight: 400;
  font-size: 14px;
  font-size: 1.4rem;
  color: #888
}
.tp-News_Item-link {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 10px;
  line-height: 1.7;
  color: #333
}
.tp-Support {
  position: relative;
  padding: 75px 25px 70px
}
.tp-Support_Title-en {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  display: block;
  letter-spacing: .1em;
  color: #333
}
.tp-Support_Title-sub {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  display: block;
  margin-top: 8px;
  color: #333
}
.tp-Support_More {
  position: absolute;
  right: 25px;
  top: 70px
}
.tp-Support_Items, .tp-Support_Item + .tp-Support_Item {
  margin-top: 34px
}
.tp-Support_Card {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  background-color: #f8f7f1
}
.tp-Support_Head {
  width: 37%;
  background-position: 50% 50%;
  background-size: cover;
  background-repeat: no-repeat
}
.tp-Support_Head:after {
  content: '';
  display: block;
  padding-top: 100%
}
.tp-Support_Head.lazy {
  background-color: #f6f7f8;
  background-repeat: no-repeat;
  background-image: linear-gradient(to right, #eee 8%, #ddd 18%, #eee 33%);
  background-size: 800px auto;
  -webkit-animation-name: placeholder;
  animation-name: placeholder;
  -webkit-animation-duration: .9s;
  animation-duration: .9s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear
}
.tp-Support_Desc {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  width: 63%;
  padding-left: 20px;
  color: #333
}
.tp-Support_Text {
  margin-top: 14px;
  font-size: 14px;
  font-size: 1.4rem;
  color: #333;
  line-height: 1.8
}
.tp-Concept {
  padding-bottom: 80px
}
.tp-Concept_Inner {
  position: relative;
  padding: 82px 6.67% 0
}
.tp-Concept_Title-en {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  display: block;
  letter-spacing: .1em;
  color: #333
}
.tp-Concept_Title-sub {
  display: block;
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 300;
  margin: 8px 0 0
}
.tp-Concept_Items {
  margin-top: 40px;
  display: block
}
.tp-Concept_Link {
  color: #f1832c;
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1px solid #f1832c;
  position: relative;
  margin: 20px auto 0
}
.tp-Concept_Link:before, .tp-Concept_Link:after {
  content: '';
  background-color: #f1832c;
  position: absolute;
  width: 33%;
  height: 1px
}
.tp-Concept_Link:before {
  top: 41%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) rotate(45deg);
  transform: translate3d(-50%, -50%, 0) rotate(45deg)
}
.tp-Concept_Link:after {
  top: 61%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) rotate(-45deg);
  transform: translate3d(-50%, -50%, 0) rotate(-45deg)
}
.tp-Concept_Item {
  border-bottom: 1px solid #d8d8d8;
  padding-bottom: 40px;
  margin-bottom: 39px;
  border-right: 0
}
.tp-Concept_Item:last-child {
  margin-bottom: 0;
  border-bottom: 0;
  padding-bottom: 0
}
.tp-Concept_Item:hover .tp-Concept_Item-text {
  color: #f1832c
}
.tp-Concept_Item-number {
  display: block;
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 300;
  text-align: center
}
.tp-Concept_Item-text {
  font-weight: 400;
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.7;
  display: block;
  text-align: center;
  margin-top: 15px;
  transition: color .3s cubic-bezier(.25, .46, .45, .94)
}
.tp-Concept_Image {
  width: 100%;
  height: auto
}
.tp-Concept_Heading {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .1em;
  line-height: 1.7;
  margin-top: 15px
}
.tp-Concept_Break {
  display: none
}
.tp-Concept_images-Wrapper {
  overflow: hidden
}
.tp-Concept_images-Inner {
  overflow: hidden
}
.tp-Concept_images-Inner:before, .tp-Concept_images-Inner:after {
  display: table;
  content: '';
  line-height: 0
}
.tp-Concept_images-Inner:after {
  clear: both
}
.tp-Concept_images {
  margin-top: 41px;
  float: left;
  will-change: transform
}
.tp-Concept_images:before, .tp-Concept_images:after {
  display: table;
  content: '';
  line-height: 0
}
.tp-Concept_images:after {
  clear: both
}
.tp-Concept_images-Item {
  float: left;
  width: 240px
}
.tp-Concept_images-Item-image {
  width: 100%;
  height: auto
}
.exhibition-Head {
  padding: 20px 25px 0
}
.exhibition-Head_Title {
  letter-spacing: .1em
}
.exhibition-Head_Title-en, .exhibition-Head_Title-sub {
  display: inline-block
}
.exhibition-Head_Title-en {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  color: #333
}
.exhibition-Head_Title-sub {
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 8px;
  color: #333;
  padding-left: 30px
}
.exhibition-Head_Sort {
  position: relative;
  display: -webkit-flex;
  display: flex;
  text-align: center;
  margin-top: 30px;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  max-width: 320px
}
.exhibition-Head_Sort .exhibition-Head_Sort-genre, .exhibition-Head_Sort .exhibition-Head_Sort-year {
  width: 50%
}
.exhibition-Head_Sort .exhibition-Head_Sort-genre {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}
.exhibition-Head_Sort .exhibition-Head_Sort-year {
  position: relative;
  padding-left: 20px;
  margin-left: 20px
}
.exhibition-Head_Sort .exhibition-Head_Sort-year:before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 1px;
  background-color: #ddd
}
.exhibition-Head_Btn {
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 10px;
  letter-spacing: .1em;
  color: #333;
  background-color: #f8f7f1;
  border-radius: 15px;
  padding: 8px 10px;
  max-width: 140px
}
html[lang=en] .exhibition-Head_Btn {
  letter-spacing: .02em
}
.exhibition-Head_Btn.is-active {
  background-color: #666;
  color: #fff
}
.exhibition-Head_Btn:first-child {
  margin-top: 0
}
.exhibition-Heading-h3 {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  color: #333;
  letter-spacing: .1em;
  margin-bottom: 50px
}
.exhibition-Heading-sub {
  position: relative;
  display: inline-block;
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 300;
  letter-spacing: .1em;
  padding-left: 40px
}
.exhibition-Heading-sub:before {
  content: '';
  display: block;
  position: absolute;
  left: 10px;
  top: 50%;
  width: 20px;
  height: 1px;
  background-color: #f1832c
}
.exhibition-Section {
  padding: 80px 25px 70px;
  border-top: 1px solid #f1832c
}
.exhibition-Section:first-child {
  padding-top: 60px;
  border-top: none
}
.calendar-Header {
  padding: 20px 25px 80px
}
.calendar-Header_Heading {
  margin: 0 0 30px
}
.calendar-Header_Heading-en {
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: .1em;
  line-height: 2
}
html[lang=en] .calendar-Header_Heading-en {
  letter-spacing: .02em
}
.calendar-Header_Heading-sub {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 300;
  letter-spacing: .125em;
  line-height: 1.83333;
  padding: 0 2em
}
html[lang=en] .calendar-Header_Heading-sub {
  letter-spacing: .02em
}
.calendar-Header_Menu {
  display: -webkit-flex;
  display: flex;
  text-align: center;
  position: relative
}
.calendar-Header_Menu .calendar-Header_Menu-year {
  width: 43%
}
.wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-end;
  align-items: flex-end
}
.wrap .day {
  font-weight: 300;
  font-size: 40px;
  font-size: 4rem;
  line-height: 1;
  color: #333
}
.wrap .day-name {
  padding: 0 0 2px 8px;
  color: #333
}
.wrap .year, .wrap .month, .wrap .weekday {
  font-size: 12px;
  font-size: 1.2rem;
  text-transform: uppercase;
  letter-spacing: .1em;
  display: block;
  color: #333
}
html[lang=en] .wrap .year, html[lang=en] .wrap .month, html[lang=en] .wrap .weekday {
  letter-spacing: .02em
}
.wrap .month {
  margin-top: 4px
}
.calendar-Buttons {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  width: 80px
}
.calendar-Buttons .calendar-Buttons_Button {
  width: 40px;
  height: 40px
}
.calendar-Buttons .calendar-Buttons_Button .icon-arrow01 {
  width: 24px;
  height: 14px
}
.calendar-Buttons .calendar-Buttons_Button .icon-arrow01 path {
  stroke: #888
}
.calendar-Buttons .calendar-Buttons_Button:disabled {
  opacity: .5
}
.calendar-Buttons .calendar-Buttons_Button:not(:disabled):hover path {
  stroke: #f1832c
}
.calendar-Buttons .calendar-Buttons_Button-prev .icon-arrow01 {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg)
}
.calendar-Buttons .calendar-Buttons_Button-next {
  margin-left: 5px
}
.calendar-Buttons .calendar-Buttons_Button-next .icon-arrow01 {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg)
}
.calendar_Main {
  min-height: 500px;
  position: relative
}
.calendar_Main .loader-container {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  opacity: 1;
  overflow: visible;
  visibility: visible;
  transition: opacity .1s, overflow 0s, height 0s, visibility 0s
}
.calendar_Main .loader-container.loader-container-loaded {
  height: 0;
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  transition: opacity .1s, overflow 0s .1s, height 0s .1s, visibility 0s .1s
}
.calendar_Main .loader-container:before {
  background-color: #fff;
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: .5
}
.calendar_Main .loader {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 32px;
  height: 32px;
  -webkit-animation-name: loading;
  animation-name: loading;
  -webkit-animation-duration: 4.8s;
  animation-duration: 4.8s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite
}
.calendar_Main .loader-Span {
  display: block;
  width: 32px;
  height: 32px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  clip: rect(0, 32px, 32px, 16px);
  -webkit-animation-name: loading2;
  animation-name: loading2;
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite
}
.calendar_Main .loader-Span:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  height: 32px;
  width: 32px;
  clip: rect(0, 32px, 32px, 16px);
  border: 3px solid #f1832c;
  border-radius: 50%;
  -webkit-animation-name: loading3;
  animation-name: loading3;
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
  -webkit-animation-timing-function: cubic-bezier(.77, 0.000, .175, 1.000);
  animation-timing-function: cubic-bezier(.77, 0.000, .175, 1.000);
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite
}
.calendar-Wrapper_Dates {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding: 0 20px;
  margin: 0 0 30px
}
.calendar-Wrapper_Body {
  width: 100%;
  text-align: center;
  margin-top: 30px
}
.calendar-Wrapper_Body .cell {
  width: 14.28571%
}
.calendar-Wrapper_Body .cell.day {
  font-size: 11px;
  font-size: 1.1rem;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  color: #888;
  padding-bottom: 10px
}
html[lang=en] .calendar-Wrapper_Body .cell.day {
  letter-spacing: .02em
}
.calendar-Wrapper_Body .cell.day.weekend {
  color: #f1832c
}
.calendar-Wrapper_Body .cell.date {
  font-weight: 200;
  position: relative
}
.calendar-Wrapper_Body .cell.date.weekend .anchor {
  color: #f1832c
}
.calendar-Wrapper_Body .cell.date.close .anchor {
  color: #ccc;
  border: 1px solid #ddd
}
.calendar-Wrapper_Body .cell.date.close .anchor:hover:before {
  content: none
}
.calendar-Wrapper_Body .cell.date:after {
  content: '';
  display: block;
  padding-top: 100%
}
.calendar-Wrapper_Body .cell.date.is-active .anchor {
  background-color: #fce5d5;
  color: #888
}
.calendar-Wrapper_Body .cell.date.is-current .anchor {
  background-color: #f1832c;
  color: #fff
}
.calendar-Wrapper_Body .cell .anchor {
  cursor: pointer;
  border-radius: 50%;
  display: -webkit-flex;
  display: flex;
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 300;
  -webkit-align-items: center;
  align-items: center;
  letter-spacing: .05em;
  -webkit-justify-content: center;
  justify-content: center;
  width: 80%;
  height: 80%;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}
html[lang=en] .calendar-Wrapper_Body .cell .anchor {
  letter-spacing: .1em
}
.calendar-Wrapper .row {
  display: -webkit-flex;
  display: flex;
  padding: 0 15px
}
.calendar-Wrapper .row:before {
  display: block;
  content: ''
}
.calendar-Wrapper .row.date {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  border-bottom: 1px solid #ddd
}
.calendar-Wrapper .row.date:first-child {
  border-top: 1px solid #ddd
}
.calendar-Wrapper .row.offset-1:before {
  width: 14.28571%
}
.calendar-Wrapper .row.offset-2:before {
  width: 28.57143%
}
.calendar-Wrapper .row.offset-3:before {
  width: 42.85714%
}
.calendar-Wrapper .row.offset-4:before {
  width: 57.14286%
}
.calendar-Wrapper .row.offset-5:before {
  width: 71.42857%
}
.calendar-Wrapper .row.offset-6:before {
  width: 85.71429%
}
.calendar-Wrapper_Note {
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 1.71429;
  margin: 20px 0 0;
  padding: 0 20px 0 55px;
  position: relative
}
html[lang=en] .calendar-Wrapper_Note {
  letter-spacing: .02em
}
.calendar-Wrapper_Note:before {
  content: '';
  border: 1px solid #ddd;
  border-radius: 50%;
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  left: 25px;
  top: 0
}
.calendar-Detail {
  margin-top: 35px;
  padding: 0 20px 80px
}
.calendar-Detail .calendar-Detail_Dates {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_List {
  position: relative;
  margin: 0 0 30px
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_List:last-child {
  margin: 0
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_Empty {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333
}
html[lang=en] .calendar-Detail .calendar-Detail_Body .calendar-Detail_Empty {
  letter-spacing: .02em
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_Item {
  display: block;
  box-sizing: border-box;
  background-color: #f1832c;
  border-color: #f1832c;
  border-radius: 10px;
  border-width: 1px;
  border-style: solid;
  color: #fff;
  padding: 12px 10px 12px 20px;
  margin: 0 0 10px;
  transition-property: background, color;
  transition-duration: .4s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_Item:last-child {
  margin: 0
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_Item:hover {
  background-color: #fff;
  color: #f1832c
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_Item-news {
  background-color: #fff;
  border: 1px solid #333;
  color: #333;
  font-weight: 600
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_Item-news:hover {
  background-color: #666;
  color: #fff
}
.calendar-Detail .calendar-Detail_Heading {
  color: #333;
  font-size: 10px;
  font-size: 1rem;
  font-weight: 300;
  letter-spacing: .15em;
  line-height: 2.2;
  margin: 0 0 4px
}
html[lang=en] .calendar-Detail .calendar-Detail_Heading {
  letter-spacing: .02em
}
.calendar-Detail .calendar-Detail_SubTitle {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 300;
  letter-spacing: .125em;
  line-height: 1.83333
}
html[lang=en] .calendar-Detail .calendar-Detail_SubTitle {
  letter-spacing: .02em
}
.calendar-Detail .calendar-Detail_Title {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 1.71429;
  margin: 4px 0 0
}
html[lang=en] .calendar-Detail .calendar-Detail_Title {
  letter-spacing: .1em
}
.calendar-Detail .calendar-Detail_Term {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 300;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 6px 0 0
}
html[lang=en] .calendar-Detail .calendar-Detail_Term {
  letter-spacing: .02em
}
.concept {
  color: #333
}
.concept .concept-Header_Inner {
  padding: 12px 0 0
}
.concept .concept-Header_Heading {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: .1em;
  line-height: 2
}
html[lang=en] .concept .concept-Header_Heading {
  letter-spacing: .1em
}
.concept .concept-Header_Heading-large {
  text-transform: uppercase
}
.concept .concept-Header_Heading-small {
  font-weight: 400;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  padding: 0 2em
}
html[lang=en] .concept .concept-Header_Heading-small {
  letter-spacing: .02em
}
.concept .concept-Nav {
  margin: 0 0 40px
}
.concept .concept-Nav_Inner {
  padding-right: 25px;
  padding-left: 25pX
}
.concept .concept-Nav_Item {
  -webkit-flex-basis: 25%;
  flex-basis: 25%
}
.concept .concept-Nav_Item:last-child .concept-Nav_Link {
  border-bottom: none
}
.concept .concept-Nav_Link {
  border-bottom: 1px solid #d8d8d8;
  color: #333;
  display: block;
  text-align: center;
  padding: 24px 0 40px
}
.concept .concept-Nav_Link:hover .concept-Nav_ItemLabel {
  color: #f1832c
}
.concept .concept-Nav_ItemNumber {
  display: block;
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: .1em;
  line-height: 2
}
html[lang=en] .concept .concept-Nav_ItemNumber {
  letter-spacing: .1em
}
.concept .concept-Nav_ItemLabel {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 1.71429;
  margin: 0 0 12px;
  transition: color .3s cubic-bezier(.25, .46, .45, .94)
}
html[lang=en] .concept .concept-Nav_ItemLabel {
  letter-spacing: .1em
}
.concept .concept-Nav_Svg {
  width: 22px;
  margin: 0 auto
}
.concept .concept-Nav_Svg:before {
  padding: 100% 0 0
}
.concept .concept-Detail {
  margin: 0 0 80px
}
.concept .concept-Detail_HeaderInner {
  border-top: solid 1px #f1832c;
  padding: 78px 0 56px
}
.concept .concept-Detail_HeaderHeading {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: .075em;
  line-height: 1.6;
  margin: 0 0 50px
}
html[lang=en] .concept .concept-Detail_HeaderHeading {
  letter-spacing: .1em
}
.concept .concept-Par {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333
}
html[lang=en] .concept .concept-Par {
  letter-spacing: .02em
}
.concept .concept-Gallery {
  background-color: #f8f7f1;
  font-size: 0;
  height: 113px;
  margin: 0 0 52px;
  position: relative;
  overflow: hidden
}
.concept .concept-Gallery_Inner {
  height: 100%;
  position: absolute
}
.concept .concept-Gallery_List {
  display: inline-block;
  list-style: none;
  height: 100%;
  padding: 0;
  margin: 0
}
.concept .concept-Gallery_Item {
  display: inline-block;
  height: 100%
}
.concept .concept-Gallery_Img {
  width: auto;
  max-height: 100%;
  height: 100%;
  line-height: 0
}
.concept .concept-Tag_List {
  font-size: 0
}
.concept .concept-Tag_Item {
  display: inline-block;
  padding: 10px 0 0;
  margin: 0 10px 0 0
}
.concept .concept-Tag_Link {
  color: #fff;
  display: inline-block;
  border: solid 1px #f1832c;
  background-color: #f1832c;
  border-radius: 1.6em;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  text-align: center;
  text-decoration: none;
  min-width: 140px;
  padding: .33333em 1em
}
html[lang=en] .concept .concept-Tag_Link {
  letter-spacing: .02em
}
.learning-Head_Label-btn {
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 10px;
  letter-spacing: .1em;
  color: #333;
  background-color: #f8f7f1;
  border-radius: 15px;
  padding: 8px 10px;
  text-align: center;
  display: block;
  transition-property: color, background-color;
  transition-duration: .3s;
  transition-timing-function: cubic-bezier(.25, .46, .45, .94)
}
html[lang=en] .learning-Head_Label-btn {
  letter-spacing: .02em
}
.is-active .learning-Head_Label-btn {
  background-color: #666;
  color: #fff
}
.learning-Head_Label-btn:hover {
  background-color: #666;
  color: #fff
}
.learning-Keyvisual {
  width: 100%;
  margin-top: 61px
}
.learning-Keyvisual-slide {
  width: 100%;
  overflow: hidden
}
.slide-wapper:before, .slide-wapper:after {
  display: table;
  content: '';
  line-height: 0
}
.slide-wapper:after {
  clear: both
}
.learning-Keyvisual-wrapper {
  float: left
}
.learning-Keyvisual-wrapper:before, .learning-Keyvisual-wrapper:after {
  display: table;
  content: '';
  line-height: 0
}
.learning-Keyvisual-wrapper:after {
  clear: both
}
.learning-Keyvisual-item {
  width: 300px;
  height: 169px;
  float: left
}
.learning-Keyvisual-image {
  width: 100%;
  height: auto
}
.learning-Keyvisual-texts {
  padding-right: 6.66667%;
  padding-left: 6.66667%;
  margin: 48px 0 0
}
.learning-Keyvisual-text {
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 1.71429
}
.learning-Top-content {
  width: 87%;
  margin: 79px auto 80px
}
.learning-Top-inner {
  margin-top: 0
}
.learning-Top-detail-btn-wrapper {
  margin-top: 25px;
  max-width: 140px
}
.learning-Contents {
  width: 87%;
  margin: 51px auto 77px
}
.learning-Section {
  border-top: 1px solid #f1832c;
  padding-top: 70px;
  margin-right: 0;
  margin-bottom: 81px
}
.learning-Section:last-child {
  margin-bottom: 0
}
.learning-Section-detail {
  float: none;
  width: auto
}
.learning-Section-figure {
  margin: 0 0 33px
}

.learning-Section-figure img {	/* 20200824 追加*/
  width:100%;
}

.learning-Figure-image {
  width: 100%
}
.learning-Header .learning-Program_Figure { margin-bottom:48px;} /*	20200825	追加*/

.learning-Header_Inner {
  padding-top: 46px;
  padding-right: 25px;
  padding-left: 25px
}
.learning-Header_Title {
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: .075em;
  line-height: 1.6;
  margin-bottom: 48px
}
html[lang=en] .learning-Header_Title {
  letter-spacing: .1em
}
.learning-Header_Texts {
  max-width: 760px
}
.learning-Header_Text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 0 0 1.83333em
}
html[lang=en] .learning-Header_Text {
  letter-spacing: .02em
}
.learning-Header_Text:last-child {
  margin: 0
}
.learning-Content_Inner {
  padding-top: 74px;
  padding-right: 25px;
  padding-left: 25px;
  padding-bottom: 44px
}
.learning-Content_Section {
  border-top: 1px solid #f1832c;
  padding: 74px 0 0
}
.learning-ProgramHeader + .learning-ProgramHeader {
  padding: 38px 0 0
}
.learning-ProgramHeader + .learning-Programs {
  padding: 26px 0 0
}
.learning-ProgramHeader_Heading {
  color: #333;
  font-weight: 600;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: .09375em;
  line-height: 1.625;
  margin: 0 0 22px
}
html[lang=en] .learning-ProgramHeader_Heading {
  letter-spacing: .02em
}
.learning-ProgramHeader_Text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333
}
html[lang=en] .learning-ProgramHeader_Text {
  letter-spacing: .02em
}
.learning-ProgramHeader_Text + .learning-ProgramHeader_Text {
  margin: 1.83333em 0 0
}
.learning-ProgramHeader_Text a, .learning-ProgramHeader_Text .learning-Program_Link {
  border-bottom: 1px dotted #333;
  color: #333;
  transition: .1s color cubic-bezier(.25, .46, .45, .94), .1s border-bottom-color cubic-bezier(.25, .46, .45, .94)
}
.learning-ProgramHeader_Text a:hover, .learning-ProgramHeader_Text .learning-Program_Link:hover {
  border-bottom-color: #f1832c;
  color: #f1832c
}
.learning-Programs {
  font-size: 0
}
.learning-Programs + .learning-ProgramHeader {
  padding: 50px 0 0
}
.learning-Program {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  margin: 0 0 50px
}
.learning-Program:last-child {
  margin: 0
}
.learning-Program-photo {
  margin: 0 0 26px
}
.learning-Program_Heading {
  color: #333;
  font-weight: 600;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: .09375em;
  line-height: 1.625
}
html[lang=en] .learning-Program_Heading {
  letter-spacing: .1em
}
.learning-Program_Heading + .learning-Program_Figure {
  padding: 24px 0 0
}
.learning-Program_Heading + .learning-Program_Texts {
  padding: 22px 0 0
}
.learning-Program_Figure + .learning-Program_Texts {
  padding: 26px 0 0
}
.learning-Program_Img {
  max-width: 100%;
  width: 100%;
  height: auto;
  line-height: 0;
  margin-top:0px; /* 20200821追加*/
}
.learning-Program_Img + .learning-Program_Caption {
  padding: 10px 0 0 /* 20200821修正 6px 0 0*/
}
.learning-Program_Caption {
  color: #666; /* 20200821修正 #888*/
  font-size: 10px; /* 20200821修正 12px*/
  font-size: 1.0rem; /* 20200821修正 1.0rem*/
  letter-spacing: .05em; /* 20200821修正 .125em*/
  line-height: 1.5 /* 20200821修正 1.83333*/
}
html[lang=en] .learning-Program_Caption {
  letter-spacing: .02em
}

/* 追加　20200821　↓↓ */
.learning-Program_Texts {color:#333;font-weight:300;font-size:12px;font-size:1.2rem;letter-spacing:.125em;line-height:1.83333}
.learning-Program_Texts ul{  margin-left:0px;}
.learning-Program_Texts ul li { position: relative;
    padding-left: 15px;}
.learning-Program_Texts ul li:before { content:"・" ;
position: absolute;
    left: 0;

}


.learning-Middle_Section:last-child { margin-bottom:-48px;}
.learning-Middle_Section h4 {color:#333;font-weight:600;font-size:16px;font-size:1.6rem;letter-spacing:.09375em;line-height:1.625; margin-bottom: 22px;}
.learning-Middle_Heading+.learning-Middle_Figure{padding:24px 0 0}
.learning-Middle_Texts {padding:0 0 48px;color:#333;font-size:14px;font-size:1.4rem;letter-spacing:.125em;line-height:1.83333; }


/* 追加　20200821 ↑↑ */


.learning-Program_Item, .learning-Program_Text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333
}
html[lang=en] .learning-Program_Item, html[lang=en] .learning-Program_Text {
  letter-spacing: .02em
}
.learning-Program_Item a, .learning-Program_Item .learning-Program_Link, .learning-Program_Texts a, .learning-Program_Text .learning-Program_Link, .learning-Header_Inner .learning-Middle_Section .learning-Middle_Texts a{
  border-bottom: 1px dotted #333;
  color: #333;
  transition: .1s color cubic-bezier(.25, .46, .45, .94), .1s border-bottom-color cubic-bezier(.25, .46, .45, .94)
}
.learning-Program_Item a:hover, .learning-Program_Item .learning-Program_Link:hover, .learning-Program_Texts a:hover, .learning-Program_Text .learning-Program_Link:hover, .learning-Header_Inner .learning-Middle_Section .learning-Middle_Texts a:hover {
  border-bottom-color: #f1832c;
  color: #f1832c
}
.learning-Program_Item {
  text-indent: -1em;
  padding: 0 0 0 1em
}
.learning-Program_Item:before {
  content: '・'
}
.learning-Content_Section-title {
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: .075em;
  line-height: 1.6;
  margin: 0 0 40px
}
html[lang=en] .learning-Content_Section-title {
  letter-spacing: .1em
}
.learning-Content_Section-text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  height:5.5em;	/*20200825追加*/
  overflow: hidden;	/*20200825追加*/
}
html[lang=en] .learning-Content_Section-text {
  letter-spacing: .02em
}

.learning-Section-detail .ellipsis {
  display: block;
  color: #f1832c;
  font-size: 12px;
  font-size: 1.2rem;
  margin: 5px 0 0;
}
.learning-Content_Section-title-sub {
  font-weight: 600;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: .09375em;
  line-height: 1.625;
  margin-bottom: 2px
}
html[lang=en] .learning-Content_Section-title-sub {
  letter-spacing: .1em
}
.card-WhatsOn_More {
  position: absolute;
  top: -10px;
  right: 0
}
.learning-Content_Card {
  margin: 57px 0 0;
  position: relative
}
.learning-Content_Card:first-child {
  margin: 0
}
.learning-Content_Card:hover .learning-Content_Card-title {
  color: #f1832c
}
.learning-Content_Card:hover .text {
  border-bottom-color: #f1832c
}
.learning-Content_Card .label {
  margin: 20px 0 0
}
.learning-Content_Card-inner {
  background-color: #f8f7f1
}
.learning-Content_Label {
  margin: 30px 0 0
}
.learning-Content_Card-image {
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: none;
  padding-top: 56.25%
}
.learning-Content_Card-lead {
  color: #888;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 8px 0 0
}
html[lang=en] .learning-Content_Card-lead {
  letter-spacing: .02em
}
.learning-Content_Card-title {
  color: #333;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: .09375em;
  line-height: 1.625;
  padding: 2px;
  margin: 10px 0 0
}
html[lang=en] .learning-Content_Card-title {
  letter-spacing: .1em
}
.learning-Content_Card-title .text {
  border-bottom: 1px dotted #333
}
.learning-Content_Card-time {
  color: #888;
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 8px 0 0
}
html[lang=en] .learning-Content_Card-time {
  letter-spacing: .02em
}
.learning-Content_Card-description {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  max-height: 5.5em;
  margin: 20px 0 0;
  overflow: hidden
}
html[lang=en] .learning-Content_Card-description {
  letter-spacing: .02em
}
.learning-Content_ellipsis {
  color: #f1832c;
  font-size: 12px;
  font-size: 1.2rem;
  margin: 5px 0 0
}
.learning-Content_Section-openEstimate {
  border-top: 1px solid #f1832c;
  padding: 74px 0 0;
  margin: 74px 0 0
}
.learning-Content_SectionInner {
  position: relative
}
.support {
  color: #333
}
.support .support-Intro_Inner {
  padding: 12px 0 74px
}
.support .support-Intro_Header {
  margin: 0 0 62px
}
.support .support-Intro_Heading {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: .1em;
  line-height: 2;
  margin: 0 0 20px
}
html[lang=en] .support .support-Intro_Heading {
  letter-spacing: .1em
}
.support .support-Intro_Heading-large {
  text-transform: uppercase
}
.support .support-Nav_Outer {
  max-width: 340px
}
.support .support-Nav {
  display: -webkit-flex;
  display: flex
}
.support .support-Nav_Inner {
  -webkit-flex-basis: 50%;
  flex-basis: 50%;
  -webkit-flex-grow: 1;
  flex-grow: 1;
  -webkit-order: 0;
  order: 0
}
.support .support-Nav_List {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -10px 0 0
}
.support .support-Nav_Item + .support-Nav_Item .support-Nav_ItemInner {
  padding: 10px 0 0 10px
}
.support .support-Nav_Item:nth-child(odd) .support-Nav_ItemInner {
  padding: 10px 0 0
}
.support .support-Nav_Item:first-child .support-Nav_ItemInner {
  padding: 10px 0 0
}
.support .support-Nav_Link {
  display: inline-block;
  background-color: #f8f7f1;
  border-radius: 15px;
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .1em;
  text-align: center;
  width: 100%;
  min-width: 140px;
  padding: 8px 10px
}
html[lang=en] .support .support-Nav_Link {
  letter-spacing: .02em
}
.support .support-Nav_Link.is-active {
  background-color: #666;
  color: #fff
}
.support .support-Par {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 1.71429;
  margin: 0 0 1em
}
html[lang=en] .support .support-Par {
  letter-spacing: .1em
}
.support .support-Par:last-child {
  margin: 0
}
.support .support-Contents .support-Details {
  border-top: solid 1px #f1832c
}
.support .support-Detail {
  border-bottom: solid 1px #f1832c;
  padding: 78px 0 80px
}
.support .support-Detail:last-child {
  border-bottom: none
}
.support .support-Detail_Inner {
  height: 100%;
  padding: 0 0 60px;
  position: relative
}
.support .support-Detail_Header {
  margin: 0 0 34px
}
.support .support-Detail_HeaderHeading {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: .075em;
  line-height: 1.6
}
html[lang=en] .support .support-Detail_HeaderHeading {
  letter-spacing: .1em
}
.support .support-Detail_Figure {
  margin: 0 0 26px
}
.support .support-Detail_Img {
  max-width: 100%;
  width: 100%;
  height: auto;
  line-height: 0
}
.support .support-Detail_Par {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333
}
html[lang=en] .support .support-Detail_Par {
  letter-spacing: .02em
}
.support .support-Detail_Link {
  color: #333;
  display: inline-block;
  background-color: #f8f7f1;
  border-radius: 1.6em;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  text-align: center;
  text-decoration: none;
  min-width: 140px;
  padding: .41667em 1em;
  position: absolute;
  bottom: 0
}
html[lang=en] .support .support-Detail_Link {
  letter-spacing: .02em
}
.tomonokai .sw-Calendar {
  display: none
}
.tomonokai-Container {
  padding-top: 40px;
  padding-right: 25px;
  padding-left: 25px;
  padding-bottom: 0
}
.tomonokai-Introduction {
  border-bottom: 1px solid #f1832c;
  padding: 0 0 74px
}
.tomonokai-Introduction .tomonokai-Heading {
  margin-top: 50px
}
.tomonokai-Introduction .tomonokai-Text {
  margin-top: 30px
}
.tomonokai-Introduction_Image .image {
  width: 100%;
  height: auto
}
.tomonokai-Heading {
  font-size: 20px;
  font-size: 2rem;
  font-weight: 400;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
.tomonokai-Text {
  font-size: 14px;
  font-size: 1.4rem;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
.tomonokai-Heading_Sub {
  font-size: 16px;
  font-size: 1.6rem
}
.tomonokai-Advantages {
  margin-top: 65px;
  padding-bottom: 75px;
  border-bottom: 1px solid #f1832c;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
.tomonokai-Advantages_Item {
  margin-top: 35px
}
.tomonokai-Advantages_head {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}
.tomonokai-Advantages_head .num {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  font-size: 20px;
  font-size: 2rem;
  color: #fff;
  min-width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: #f1832c
}
.tomonokai-Advantages_head .text {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  color: #333;
  line-height: 1.625;
  margin-left: 20px
}
.tomonokai-Advantages_Image {
  margin-top: 20px
}
.tomonokai-Advantages_Image .image {
  width: 100%;
  height: auto
}
.tomonokai-Advantages_Text {
  font-size: 14px;
  font-size: 1.4rem;
  color: #333;
  margin-top: 15px
}
.tomonokai-Advantages_Others {
  margin-top: 55px
}
.tomonokai-Advantages_Notes {
  margin-top: 40px
}
.tomonokai-Advantages_Note {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  line-height: 1.83
}
.tomonokai-Fee {
  border-bottom: 1px solid #f1832c
}
.tomonokai-Fee_Inner {
  padding: 76px 0 78px
}
.tomonokai-Fee_Head {
  color: #333;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 1.625;
  margin: 0 0 34px
}
.tomonokai-Fee_ImgContainer {
  margin: 0 0 36px
}
.tomonokai-Fee_Img {
  max-width: 100%;
  width: 100%;
  line-height: 0
}
.tomonokai-Fee_Table {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0
}
.tomonokai-Fee_Text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 0 0 2.1em
}
html[lang=en] .tomonokai-Fee_Text {
  letter-spacing: .02em
}
.tomonokai-Fee_Text:last-child {
  margin: 0
}
.tomonokai-Apply {
  border-bottom: 1px solid #f1832c
}
.tomonokai-Apply_Inner {
  padding: 76px 0 68px
}
.tomonokai-Apply_Head {
  color: #333;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 1.625;
  margin: 0 0 50px
}
.tomonokai-Apply_Content {
  margin: 0 0 54px
}
.tomonokai-Apply_Content:last-child {
  margin: 0
}
.tomonokai-Apply_ContentHead {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 0 0 2.1em
}
html[lang=en] .tomonokai-Apply_ContentHead {
  letter-spacing: .02em
}
.tomonokai-Apply_Text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 0 0 2.1em
}
html[lang=en] .tomonokai-Apply_Text {
  letter-spacing: .02em
}
.tomonokai-Apply_Text:last-child {
  margin: 0
}
.tomonokai-Apply_Button {
  display: inline-block;
  border: solid 1px transparent;
  border-radius: 1.65em;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  text-align: center;
  text-decoration: none;
  width: 200px;
  padding: .375em 1em;
  margin: 4px 0;
  touch-action: manipulation;
  white-space: nowrap;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  transition-property: color, background-color;
  transition-duration: .3s;
  transition-timing-function: cubic-bezier(.25, .46, .45, .94)
}
html[lang=en] .tomonokai-Apply_Button {
  letter-spacing: .02em
}
.tomonokai-Apply_Button-primary {
  background-color: #f1832c;
  border: solid 1px #f1832c;
  color: #fff
}
.tomonokai-Apply_Button-primary:hover {
  background-color: #fff;
  border: solid 1px #f1832c;
  color: #f1832c
}
.tomonokai-Apply_Button-secondary {
  background-color: #f8f7f1;
  border: solid 1px #f8f7f1;
  color: #333
}
.tomonokai-Apply_Button-secondary:hover {
  background-color: #666;
  border: solid 1px #666;
  color: #fff
}
.tomonokai-Usage_Head {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  color: #333
}
.tomonokai-Usage_Item {
  padding-top: 80px;
  padding-bottom: 70px;
  border-bottom: 1px solid #f1832c
}
.tomonokai-Usage_Item:last-child {
  border-bottom: none
}
.tomonokai-Usage_Item.type01 {
  -webkit-flex-direction: column;
  flex-direction: column
}
.tomonokai-Usage_Image {
  text-align: center;
  margin-top: 40px;
  padding-left: 35px;
  padding-right: 35px
}
.tomonokai-Usage_Image .img {
  width: 100%;
  height: auto
}
.tomonokai-Usage_Image .diagram {
  display: block;
  width: 100%;
  height: 40px;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  border-left: 2px solid #000
}
.tomonokai-Usage_Image .img-diagram {
  width: 56.69%
}
.tomonokai-Usage_Text {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  line-height: 1.83;
  margin-top: 30px;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .tomonokai-Usage_Text {
  letter-spacing: .02em
}
.tomonokai-Usage_Note {
  margin-top: 25px;
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  line-height: 1.83
}
.tomonokai-Usage_Notice {
  font-weight: 500;
  margin-top: 25px;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  list-style: 1.625
}
.tomonokai-Usage_Notice.attention {
  color: #f1832c
}
.tomonokai-Usage_Steps {
  position: relative;
  padding-top: 25px
}
.tomonokai-Usage_Steps:before {
  content: '';
  display: block;
  position: absolute;
  left: 50%;
  top: 40px;
  width: 0;
  height: calc(100% - 40px);
  border-right: 1px dashed #f1832c;
  z-index: -1
}
.tomonokai-Usage_Step {
  padding-top: 15px;
  text-align: center
}
.tomonokai-Usage_Step .num {
  font-size: 12px;
  font-size: 1.2rem;
  display: inline-block;
  text-align: center;
  min-width: 80px;
  color: #f1832c;
  padding: 2px 0;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  background: #fff;
  border-radius: 20px;
  border-top: 1px solid #f1832c;
  border-right: 1px solid #f1832c;
  border-bottom: 1px solid #f1832c;
  border-left: 1px solid #f1832c
}
html[lang=en] .tomonokai-Usage_Step .num {
  letter-spacing: .02em
}
.tomonokai-Usage_Step .image {
  margin-top: 20px;
  padding-left: 35px;
  padding-right: 35px
}
.tomonokai-Usage_Step .image .img {
  width: 100%;
  height: auto
}
.tomonokai-Usage_Step .text {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  background: #fff;
  line-height: 1.83;
  padding-top: 20px;
  padding-left: 35px;
  padding-right: 35px;
  padding-bottom: 20px;
  text-align: left
}
html[lang=en] .tomonokai-Usage_Step .text {
  letter-spacing: .02em
}
.join .sw-Calendar {
  display: none
}
.join-introduction .notice {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 40px;
  padding: 30px;
  border: 1px solid #f1832c;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  line-height: 1.7;
  color: #333
}
html[lang=en] .join-introduction .notice {
  letter-spacing: .1em
}
.join-introduction .explain {
  width: 100%;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 60px;
  line-height: 1.7;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .join-introduction .explain {
  letter-spacing: .1em
}
.join-introduction .explain .symbol {
  color: #f1832c
}
.form {
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 35px;
  box-sizing: border-box;
  padding-bottom: 80px
}
html[lang=en] .form {
  letter-spacing: .1em
}
.form .form-heading {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  color: #333
}
html[lang=en] .form .form-heading {
  letter-spacing: .1em
}
.form .form-wrapper {
  width: 100%;
  padding: 0 25px
}
.form .row {
  position: relative;
  border-bottom: 1px solid #ddd;
  padding: 20px 0 30px
}
.form .row:first-child {
  border-top: 1px solid #ddd
}
.form .head {
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
  color: #888;
  padding: 0 0 20px
}
html[lang=en] .form .head {
  letter-spacing: .1em
}
.form .head.is-required:after {
  content: '*';
  position: absolute;
  right: 10px;
  top: 5px;
  width: 10px;
  height: 10px;
  color: #f1832c;
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 1
}
.form .column {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  margin-top: 12px
}
.form .column:first-child {
  margin-top: 0
}
.form .unit {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  min-width: 0
}
.form .form-item {
  width: 100%;
  min-width: 0;
  background-color: #f8f7f2;
  border-radius: 5px;
  padding: 12px 10px;
  line-height: normal;
}
.form .form-select {
  padding-top: 7px;
  padding-right: 5px;
  padding-bottom: 7px;
  padding-left: 20px;
  background-color: #f8f7f2;
  border-radius: 25px;
  width: 220px;
  font-size: 12px;
  font-size: 1.2rem
}
html[lang=en] .form .form-select {
  letter-spacing: .02em
}
.form input:-webkit-autofill, .form select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #f8f7f2 inset
}
.form .note {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  margin-top: 8px;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  line-height: 1.4
}
html[lang=en] .form .note {
  letter-spacing: .02em
}
.form .unit-text {
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 10px;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  color: #333
}
html[lang=en] .form .unit-text {
  letter-spacing: .1em
}
.form .form-error-messages {
  margin-top: 5px
}
.form .form-error-messages span {
  font-size: 12px;
  font-size: 1.2rem;
  color: #f00
}
html[lang=en] .form .form-error-messages span {
  letter-spacing: .02em
}
.form .symbol {
  padding: 10px 5px 0
}
.form .column.column-1 .unit {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  margin-top: 10px
}
.form .column.column-1 .unit:first-child {
  margin-top: 0
}
.form .column.column-2 .unit {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 49%;
  margin-left: 2%
}
.form .column.column-2 .unit:first-child {
  margin-left: 0
}
.form .column.column-post .unit {
  width: 85px
}
.form .column.column-select {
  -webkit-flex-direction: column;
  flex-direction: column
}
.form .column.column-select .unit {
  width: 100%;
  position: relative
}
.form .column.column-select .unit:before {
  content: '';
  display: block;
  position: absolute;
  left: 190px;
  top: 7px;
  width: 10px;
  height: 10px;
  pointer-events: none;
  border-right: 1px solid #888;
  border-bottom: 1px solid #888;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}
.form .column.column-radio {
  padding: 10px 0
}
.form .column.column-radio .label-wrap {
  min-width: 45px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  margin-left: 20px
}
.form .column.column-radio .label-wrap:first-child {
  margin-left: 0
}
.form .column.column-radio .form-item {
  position: absolute;
  opacity: 0;
  width: auto
}
.form .column.column-radio .form-item:checked + .label:before {
  background-color: #f1832c;
  box-shadow: inset 0 0 0 4px #f8f7f2
}
.form .column.column-radio .label {
  position: relative;
  font-size: 14px;
  font-size: 1.4rem
}
html[lang=en] .form .column.column-radio .label {
  letter-spacing: .1em
}
.form .column.column-radio .label:before {
  content: '';
  background: #f8f7f2;
  border-radius: 100%;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 10px;
  vertical-align: top;
  cursor: pointer;
  text-align: center
}
.form .send-btn {
  margin-top: 60px;
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  background-color: #f1832c;
  width: 100%;
  height: 60px;
  border-radius: 10px;
  color: #fff;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .form .send-btn {
  letter-spacing: .02em
}
.form .send-btn .text {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem
}
html[lang=en] .form .send-btn .text {
  letter-spacing: .02em
}
.price .comission, .price .annual {
  display: none
}
.is-price .price {
  display: -webkit-flex;
  display: flex;
  margin-top: 5px
}
.is-price .price .comission, .is-price .price .annual {
  display: block;
  font-size: 12px;
  font-size: 1.2rem
}
html[lang=en] .is-price .price .comission, html[lang=en] .is-price .price .annual {
  letter-spacing: .02em
}
.is-price .price .comission {
  margin-right: 10px
}
.link {
  margin-top: 15px
}
.link .anchor {
  color: #888;
  font-size: 14px;
  font-size: 1.4rem;
  border-bottom-style: dotted;
  border-bottom-color: #888;
  border-bottom-width: 1px;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .link .anchor {
  letter-spacing: .1em
}
.form-family-wrap {
  display: none;
  width: 100%;
  padding: 0 25px;
  margin-top: 35px
}
.form-family-wrap .family-member {
  display: none;
  margin-top: 30px
}
.form-family-wrap .family-heading {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 400;
  color: #333;
  border-bottom: 1px solid #ddd;
  padding-bottom: 15px
}
html[lang=en] .form-family-wrap .family-heading {
  letter-spacing: .1em
}
.form-error-messages {
  width: 100%
}
.form-error-messages .required-error, .form-error-messages .type-error, .form-error-messages .different-error {
  display: none;
  color: #f00
}
.is-error-required .form-error-messages .required-error {
  display: block
}
.is-error-type .form-error-messages .type-error {
  display: block
}
.is-error-different .form-error-messages .different-error {
  display: block
}
.send-btn {
  opacity: .4;
  pointer-events: none;
  background-color: #f1832c;
  transition-property: background, color;
  transition-duration: .4s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}
.send-btn.is-enable-send {
  opacity: 1;
  pointer-events: auto
}
.sw-Accordion-member {
  width: 100%
}
.sw-Accordion-member .sw-Accordion_Title {
  font-size: 12px;
  font-size: 1.2rem
}
html[lang=en] .sw-Accordion-member .sw-Accordion_Title {
  letter-spacing: .02em
}
.sw-Accordion-member .sw-Accordion_Text {
  font-size: 11px;
  font-size: 1.1rem;
  padding-right: 0
}
html[lang=en] .sw-Accordion-member .sw-Accordion_Text {
  letter-spacing: .02em
}
.br-pc {
  display: none
}
.tomonokai-Wrap {
  padding-top: 40px;
  padding-bottom: 40px
}
.tomonokai-Member {
  letter-spacing: 1px;
  letter-spacing: .1rem;
  padding: 30px 0;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd
}
html[lang=en] .tomonokai-Member {
  letter-spacing: .1em
}
.tomonokai-Member_Name {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  color: #333
}
html[lang=en] .tomonokai-Member_Name {
  letter-spacing: .1em
}
.tomonokai-Member_Name .name {
  padding-left: 10px;
  padding-left: 1rem
}
.tomonokai-Member_Expiration {
  margin-top: 25px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}
.tomonokai-Member_Expiration .title {
  color: #888;
  font-size: 12px;
  font-size: 1.2rem
}
html[lang=en] .tomonokai-Member_Expiration .title {
  letter-spacing: .02em
}
.tomonokai-Member_Expiration .date {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  padding-left: 10px;
  padding-left: 1rem
}
html[lang=en] .tomonokai-Member_Expiration .date {
  letter-spacing: .02em
}
.tomonokai-Member_Text {
  margin-top: 25px;
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.83
}
html[lang=en] .tomonokai-Member_Text {
  letter-spacing: .02em
}
.tomonokai-Member_Text .note {
  color: #f1832c
}
.tomonokai-Member_Login {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin-top: 25px
}
.tomonokai-Member_Login-item {
  width: 45%
}
.tomonokai-Member_Login-item.logout {
  position: relative
}
.tomonokai-Member_Login-item.logout:before {
  content: '';
  display: block;
  position: absolute;
  left: -10%;
  top: 0;
  width: 1px;
  height: 100%;
  background: #ddd
}
.tomonokai-Member_Login-item.logout .tomonokai-Member_Login-anchor {
  background: #333;
  color: #fff
}
.tomonokai-Member_Login-anchor {
  width: 100%;
  display: block;
  font-weight: 300;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .1em;
  color: #333;
  background-color: #f8f7f1;
  border-radius: 15px;
  padding: 8px 10px;
  text-align: center
}
html[lang=en] .tomonokai-Member_Login-anchor {
  letter-spacing: .02em
}
.tomonokai-Flow {
  padding: 40px 0
}
.tomonokai-Flow_List {
  position: relative;
  margin-top: 35px
}
.tomonokai-Flow_List:before, .tomonokai-Flow_List:after {
  content: '';
  display: block;
  position: absolute
}
.tomonokai-Flow_List:before {
  left: 25px;
  top: 30px;
  width: 1px;
  height: calc(100% - 80px);
  background-color: #f1832c
}
.tomonokai-Flow_List:after {
  left: 15px;
  bottom: 53px;
  width: 20px;
  height: 20px;
  border-top: 1px solid #f1832c;
  border-right: 1px solid #f1832c;
  -webkit-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg)
}
.tomonokai-Flow_List .tomonokai-Step {
  padding: 0
}
.tomonokai-Flow_Item {
  font-weight: 600;
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  padding: 20px 40px;
  margin-top: 10px;
  background-color: #f8f7f1;
  text-align: center
}
html[lang=en] .tomonokai-Flow_Item {
  letter-spacing: .1em
}
.tomonokai-Flow_Item:first-child {
  margin-top: 0
}
.tomonokai-Flow_Text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  margin-top: 10px
}
html[lang=en] .tomonokai-Flow_Text {
  letter-spacing: .02em
}
.tomonokai-Step {
  background-color: #f8f7f1;
  padding: 20px 40px
}
.tomonokai-Step_Elem {
  font-weight: 600;
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  position: relative;
  text-align: center;
  line-height: 1.714;
  padding-bottom: 45px
}
html[lang=en] .tomonokai-Step_Elem {
  letter-spacing: .1em
}
.tomonokai-Step_Elem:last-child {
  padding-bottom: 10px
}
.tomonokai-Step_Elem .icon-arrow01 {
  position: absolute;
  left: 50%;
  bottom: 15px;
  -webkit-transform: translate3d(-50%, 0, 0);
  transform: translate3d(-50%, 0, 0);
  width: 24px;
  height: 14px
}
.tomonokai-Step_Elem.done {
  color: #ccc
}
.tomonokai-Step_Elem.current {
  color: #f1832c
}
.tomonokai-Step_Text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.83;
  margin-top: 10px
}
html[lang=en] .tomonokai-Step_Text {
  letter-spacing: .02em
}
.tomonokai-Parts_Buttons .button-proceed {
  max-width: 360px;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto
}
.tomonokai-Notice_Text {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  color: #333;
  line-height: 1.714;
  padding: 30px 25px;
  border: 2px solid #f1832c;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .tomonokai-Notice_Text {
  letter-spacing: .1em
}
.tomonokai-Area_Title {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  text-align: center
}
html[lang=en] .tomonokai-Area_Title {
  letter-spacing: .02em
}
.tomonokai-Area_Title .anchor {
  color: #f1832c;
  border-bottom: 1px dotted #f1832c
}
.tomonokai-Area_Text {
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  margin-top: 7px;
  text-align: center
}
html[lang=en] .tomonokai-Area_Text {
  letter-spacing: .1em
}
.tomonokai-Area-Wrap .button-proceed {
  max-width: 360px;
  margin-top: 20px;
  margin-right: auto;
  margin-left: auto
}
.tomonokai-Point {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  border: 1px solid #888;
  text-align: center
}
.tomonokai-Point .text, .tomonokai-Point .num {
  font-size: 14px;
  font-size: 1.4rem;
  height: 60px;
  line-height: 60px;
  width: 50%
}
html[lang=en] .tomonokai-Point .text, html[lang=en] .tomonokai-Point .num {
  letter-spacing: .1em
}
.tomonokai-Point .text {
  background-color: #888;
  color: #fff
}
.tomonokai-Point .num {
  font-size: 20px;
  font-size: 2rem;
  font-weight: 300;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .tomonokai-Point .num {
  letter-spacing: .1em
}
.tomonokai-Point-Wrap .tomonokai-Point {
  max-width: 360px;
  margin-left: auto;
  margin-right: auto
}
.tomonokai-Box_Item {
  padding: 35px 25px;
  border: 2px solid #f1832c;
  margin-top: 20px
}
.tomonokai-Box_Item:first-child {
  margin-top: 0
}
.tomonokai-Box_Item .button-proceed {
  max-width: 360px;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto
}
.tomonokai-Box_Title {
  font-weight: 600;
  font-size: 16px;
  font-size: 1.6rem;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  text-align: center;
  line-height: 1.625
}
html[lang=en] .tomonokai-Box_Title {
  letter-spacing: .1em
}
.tomonokai-Box_Title .text {
  color: #888;
  padding-left: 5px;
  padding-left: .5rem
}
.tomonokai-Box_Text {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  margin-top: 18px;
  line-height: 1.714
}
html[lang=en] .tomonokai-Box_Text {
  letter-spacing: .02em
}
.tomonokai-Caution {
  padding: 30px 25px;
  border: 2px solid #f1832c
}
.tomonokai-Caution_Title {
  font-weight: 600;
  position: relative;
  font-size: 16px;
  font-size: 1.6rem;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  line-height: 1.625;
  padding-left: 60px
}
html[lang=en] .tomonokai-Caution_Title {
  letter-spacing: .1em
}
.tomonokai-Caution_Title:before {
  font-weight: 400;
  content: '!';
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  position: absolute;
  left: 0;
  top: 0;
  width: 40px;
  height: 40px;
  background: #000;
  color: #fff;
  font-size: 20px;
  font-size: 2rem
}
.tomonokai-Caution_Text {
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 25px;
  line-height: 1.714;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .tomonokai-Caution_Text {
  letter-spacing: .1em
}
.tomonokai-Send .button-proceed {
  max-width: 360px;
  margin-left: auto;
  margin-right: auto
}
.tomonokai-Send_Texts {
  max-width: 360px;
  margin-left: auto;
  margin-right: auto
}
.tomonokai-Send_Text {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  margin-top: 40px
}
html[lang=en] .tomonokai-Send_Text {
  letter-spacing: .02em
}
.tomonokai-Send_Definition {
  margin-top: 25px
}
.tomonokai-Send_Definition .title, .tomonokai-Send_Definition .text {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .tomonokai-Send_Definition .title, html[lang=en] .tomonokai-Send_Definition .text {
  letter-spacing: .02em
}
.tomonokai-Send_Definition .title {
  color: #888
}
.tomonokai-Send_Definition .text {
  color: #333
}

.tableStyle { width: 100%;margin-top: 10px;border-collapse: collapse; }
.tableStyle th,
.tableStyle td {
	padding: 10px 10px;
	border-top: #dddddd solid 1px;
	border-bottom: #dddddd solid 1px;
	border-left: #dddddd dotted 1px;
	_border-left: expression((this.parentNode.firstChild ==this)?'none':'#dddddd dotted 1px');
	line-height: 1.67;
	vertical-align: middle;
	font-size: 12px;
	font-size: 1.2rem;
}
.tableStyle th.first,
.tableStyle td.first,
.tableStyle th:first-child,
.tableStyle td:first-child { border-left: none;	}
.tableStyle th {background: #f8f7f2; }

.PC { display: block; }
.SP { display: none; }

.tomonokai-Container {
	padding-top: 40px;
	padding-bottom: 70px;
	padding-right: 25px;
	padding-left: 25px;
}
#tomonokai .tomonokai-Container h4,
.tomonokai-Container h5 {
	color: #333;
    letter-spacing: .125em;
    line-height: 1.83333;
}
.tomonokai-Container h4 {
    font-size: 16px;
    font-size: 1.6rem;
	font-weight: 300;
}
#tomonokai .tomonokai-Container h4,
.tomonokai-Container h5 {
    font-size: 12px;
    font-size: 1.2rem;
	font-weight: 600;
}
.tomonokai-Item {
    padding-top: 70px;
    border-top: 1px solid #f1832c;
	font-size: 1.2rem;
	color: #333;
    font-weight: 300;
    letter-spacing: .125em;
    line-height: 1.83333;
}
.tomonokai-text p {
	font-size:1.4rem;
	letter-spacing: .1rem;
    margin: 0 0 2.1em;
}
.form .send-btn a { color: #fff; }
.form .send-btn a:hover,
.form .send-btn:hover > a { color: #f1832c; }
.button-proceed { max-width: 360px; }
.button-proceed .text { width: 100%; }
.button-proceed a { 
	color: #fff;
	display: flex;
	box-sizing: border-box;
    padding: 10px 0;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center; 
}
.button-proceed:hover {
    border: 1px solid #f1832c;
    background-color: #fff;
    color: #f1832c
 }
.button-proceed a:hover,
.button-proceed:hover > a { color: #f1832c; }
.button-proceed-back { background: #888; }
.button-proceed-back:hover { background: #fff!important;color: #888!important;border-color: #888!important; }
.button-proceed-back a:hover,
.button-proceed-back:hover > a { color: #888!important; }

.tomonokai-Member { margin: 40px 25px 0 25px; }

#login .type-error,#kubun .type-error,#password .type-error:last-child { margin-bottom: 10px; }

#cnfr .tomonokai-Container,
#cnfr .form .head { padding-bottom: 0; }
#cnfr .form .column:first-child { margin-top: 10px; }

#edit .tomonokai-Container { padding-bottom: 0; }
#edit .form .column:first-child { margin-top: 10px; }
#edit.edit_cnfr .form .column:first-child { margin-top: 0; }

#edit.edit_cnfr .form-family-wrap2 { padding: 0; }
.form-family-wrap2 { width: 100%;padding: 0 25px;margin-top: 35px; }
.form-family-wrap2 .family-heading { font-weight: 300;font-size: 14px;font-size: 1.4rem;color: #333;border-bottom: 1px solid #ddd;padding-bottom: 15px; }
.form-family-wrap2 .family-member { margin-top: 30px; }

#renew .tomonokai-Flow_List:after,
#renew .tomonokai-Flow_List:before { content: none; }

#kubun b { font-weight: bold; }
#kubun .form-item2 { position: absolute;opacity: 0;margin-left: 0;margin-bottom: 0;width: 30px;height: 30px; }
#kubun .form-item2:checked + .label2:before { background-color: #f1832c;box-shadow: inset 0 0 0 4px #f8f7f2; }
#kubun .label2:before {
    content: '';
    background: #f8f7f2;
    border-radius: 100%;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 10px;
    vertical-align: top;
    cursor: pointer;
    text-align: center;
}
#kubun .head { color: #333; }
#kubun .form-family-wrap { padding:0; }
#kubun .form-family-wrap,
#kubun .form-family-wrap .family-member { margin-top: 0; }
#kubun form .form-family-wrap .row:first-child { border-top: none; }	
#kubun form .form-family-wrap .column:first-child { justify-content: space-between; }
.kubun_cnfr form .form-family-wrap .column:first-child { justify-content: space-between; }
#kubun .form-family-wrap .family-heading { padding-top: 18px; }

#cnfr .form-family-wrap,#cnfr .form-family-wrap .family-member,
.edit .form-family-wrap,.edit .form-family-wrap .family-member,
#kubun .form-family-wrap,#kubun .form-family-wrap .family-member { display: block; }

#help b { font-weight: bold; }
#help h5 + .explain { margin-top: 35px;margin-bottom: 40px; }
#help h5 + .explain:last-child { margin-bottom: 0; }
#help .listStyle01:first-child { margin-top: 40px; }
#help .tomonokai-Container a { color: #333;border-bottom: 1px dotted #333; }

#quit h5 + .explain { margin-top: 35px;margin-bottom: 40px; }
#quit h5 + .explain:last-child { margin-bottom: 0; }

.listStyle01 li {
    padding-left: 13px;
    background: url(https://www.kanazawa21.jp/tomonokai/css/image/common/listtype-01.gif) no-repeat left 0.7em;
	font-size: 1.4rem;
}

#pictures .Container {
    padding-top: 40px;
    padding-bottom: 40px;
    padding-right: 25px;
    padding-left: 25px;
}
#pictures .Introduction {
    border-bottom: 1px solid #f1832c;
    padding: 0 0 74px;
}
#pictures .title h3 { font-size: 1.6rem;margin: 35px 0 10px 0; } 
#pictures .title p { font-size: 92.3%; }

#pictures .category h4{ margin-top: 20px;margin-bottom: 5px; }
#pictures .category ul li { font-size: 1.2rem;margin-right: 20px;margin-bottom: 5px; }

#pictures .Text { 
	font-weight: 300;
    font-size: 14px;
    font-size: 1.4rem;
    color: #333;
    letter-spacing: 1px;
    letter-spacing: .1rem;
}
#pictures .section {
    margin-top: 95px;
    letter-spacing: 1px;
    letter-spacing: .1rem;
	border-top: 1px solid #f1822c;
}
#pictures button { margin: 0 auto; }
#pictures .Items {
	padding-bottom: 35px;
}
#pictures .Items li { 
	width: 25%;
	padding: 35px 0;
    box-sizing: border-box;
}
#pictures .Items li div {
    margin: 0 auto;
	display: flex;
	justify-content: center;
    align-items: center;
    height: 300px;
	background: #f8f7f1;
}
#pictures .Items li img {
    width: auto;
    height: auto;
	max-width: 300px;
    max-height: 300px;
}

#pictures .Items li h3 {
    width: 100%;
	font-weight: 300;
    font-size: 16px;
    font-size: 1.6rem;
    color: #333;
    line-height: 1.625;
    margin-top: 15px;
	margin: 10px auto 0;
	width: 300px;
}
#pictures .Items li p {
    font-size: 12px;
    font-size: 1.2rem;
    color: #333;
    line-height: 1.625;
	margin-top: 10px;
	margin: 0 auto;
	width: 300px;
}
#pictures .tplFormArea { border: none;display: inline-block;text-align: left;margin-top: 35px; }
#pictures .form_photo { display: flex;flex-wrap: wrap; } 
#pictures .form_photo li { margin-bottom: 20px; }

#volunteer h4 { padding-top: 24px; }
#volunteer h5 { font-weight: normal;font-size: 84.6%;line-height: 1.82;margin-top: 4px; }

#contentsHeader a.btn01 { margin-bottom: 10px; }

.project .tplColumnArea { width: 100%;margin: 0; }
.project .tplColumnArea .inner .column { margin-bottom: 10px; }
.project .learning-Content_Section b { font-weight: bold; }
.project .learning-ProgramHeader img { width:100%; }

#permanent #contents #contentsMain .indexBtn { margin-bottom: 0; }
#permanent #contents #contentsMain .indexBtn:last-child { margin-bottom: 70px; }
#permanent #contents #contentsMain .indexBtn .wrap { margin: 0 auto; }
#permanent #contents #contentsMain .indexBtn.first a.wrap { border-bottom: none; }
#permanent #contents #contentsMain .indexBtn.first:last-child a.wrap { border-bottom: #eeeeee solid 1px; }

#top-info { width: 66.7%; }
.top-info { font-size: 12px;font-size: 1.2rem;color: #333;line-height: 2.08; }
.top-info h4 { font-size: 16px;font-size: 1.6rem;font-weight: 400; }
.top-info dl { display: flex; }
.top-info dt { font-weight: bold; }   
.top-info.tc dt { width: 60px; } 
.top-info.kr dt { width: 70px; } 

.header-Util_Lang .pulldown { opacity: 1; }
.header-Util_Lang .pulldown .label { line-height: 2.08; }
.header-Util_Lang .pulldown.open .list li:first-child { margin-top: 0;padding-top: 10px; }
.header-Util_Lang .pulldown.open .list li a { border-bottom: none; }
.header-Util_Lang .pulldown.open .list li a:hover { color: #f1832c!important; }
.header-Util_Lang .pulldown .list { padding: 0 15px 10px;font-size: 1.2rem;background: #666666;border-radius: 0 0 10px 10px; }
.header-Util_Lang .pulldown .label a,.header-Util_Lang .pulldown .label a:hover { color: #f1832c!important; }
.header-Util_Lang .pulldown.on .label a, .header-Util_Lang .pulldown .active .label a { color: #ffffff !important; }

.equipmentList.es dd { margin: 0 0 8px 12.5em; }
.equipmentList.fr dd { margin: 0 0 8px 14em; }

@media screen and (max-width: 1369px) and (min-width: 1200px){
	#contentsHeader ul.category { padding-right: 120px; }
	#contentsHeader .menu { padding-right: 80px; }
}
@media screen and (max-width: 1199px) and (min-width: 1024px){
	#contentsHeader ul.category { padding-right: 175px; }
}
@media screen and (max-width: 1199px) and (min-width: 1130px){
	#contentsHeader .menu { padding-right: 120px; }
}
@media screen and (max-width: 1129px) and (min-width: 1024px){
	#contentsHeader .menu { padding-right: 175px; }
}
@media screen and (min-width: 1024px) {
	.tomonokai-Member { margin: 40px 60px 0 60px; }
	
	#pictures .Container { padding-left: 60px;padding-right: 60px; }
	
	.pulldown.PC { z-index: 100;position: fixed;right: 122px;top: 39px; }fheader-
}
@media screen and (max-width:1400px) and (min-width:1240px) { #pictures .Items li { width: 31.3%; } }
@media screen and (max-width:1239px) and (min-width:768px) { #pictures .Items li { width: 50%; } }

@media screen and (min-width:768px) { 
	.tomonokai-text { width: 760px;margin: 0 auto; }
	.btns { display: flex; justify-content: space-between; padding: 0;margin-top: 60px; }
	.btns .button-proceed { width: 360px; }
	
	#constitution .tomonokai-Container,
	#help .tomonokai-Container,
	.quit2 .tomonokai-Container { padding-top: 60px; }
	
	#quit .tomonokai-Box_Item { display: flex;flex-wrap: wrap;align-content: space-between; }
	
	#kubun form .form-family-wrap .kubun-body { width: 70%!important; }
	#kubun form .form-family-wrap .kubun-unit {margin-top: 8px; }
	#kubun .form-family-wrap .row:first-child { padding-bottom: 14px;padding-top: 10px; }
	#kubun .form-family-wrap .family-heading { padding-bottom: 14px; }
	#kubun .tomonokai-Step { margin-top: 60px; }
	.kubun_cnfr .form .column { margin-top: 10px!important; }
	.kubun_cnfr .form-family-wrap { padding:0 25px!important; }
	
	.edit_cnfr .row { max-width: 810px;margin-right: auto;margin-left: auto;}
	.edit_cnfr .form .form-wrapper { padding: 0; }
	
	.form-family-wrap2 { max-width: 810px;margin-top: 50px;margin-right: auto;margin-left: auto; }
	
	#email .form .column:first-child { margin-top: 8px; }
	
	#pictures .category ul { display: flex;flex-wrap: wrap; }
	#pictures .category ul li { margin-right: 20px; }
	#pictures .category ul li:last-child { margin-right: 0; }
	
	#pictures .Introduction { display: -webkit-flex; display: flex; }
	#pictures .Introduction .Text { line-height: 1.714; }
	#pictures .Items {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	#pictures .Items li { position: relative;padding-bottom: 60px; }
	#pictures .Items li p { position: absolute;min-height: 38px;top: auto;left: 0;right: 0;bottom: 0;margin:auto; }

	#pictures .form_photo li { margin-right: 10px; }
	#pictures .form_photo li:last-child { margin-right: 0; }
	
	.project .tplColumnArea .inner { display: flex;justify-content: space-between; }
	.project .tplColumnArea .inner .column { width: 48%; }
	.project .learning-ProgramHeader img { width:50%; }
	
	#account.tomonokai-text { width: 1024px; }
	#account.tomonokai-text .tomonokai-Box { max-width: 1024px; }
	#account.tomonokai-text .tomonokai-Box_Item { width: 31.5%; }
	
	.header-Util.kr { width:415px!important; }
	.header-Util.es { width:455px!important; }
	.header-Util_Item.es { width: 130px!important; }
	.header-Util.fr { width:505px!important; }
	.header-Util_Item.fr { width: 180px!important; }

}
@media screen and (min-width:767px) { 
	.qa .tomonokai-Item h4 { margin-bottom: 40px; }
}

@media screen and (max-width:767px) { 
	.button-proceed-back { margin: 20px auto!important; }
	
	.tomonokai-Container .form .form-wrapper,
	.tomonokai-Container .form-family-wrap,
	.tomonokai-Container .form-family-wrap2 { padding-left: 0;padding-right: 0; }
	
	.tomonokai-Container h4 { margin: 0 0 2.1em; }
	
	#kubun form .form-family-wrap .kubun-unit {margin-bottom: 10px; }
	.kubun_cnfr .form .column { margin-top: 0; }
	
	#quit .tomonokai-text { padding-top: 60px; }
	#stop .button-proceed:first-child { margin-top: 60px; }
	
	#pictures .Items li { width:100%; }
	#pictures .Items p { margin-top: 10px; }
	
	#pictures .form_photo { justify-content: space-between; } 
	#pictures .form_photo li { width: 50%;text-align: center; }
	
	.top-info dd {margin-left: 10px; } 
}

@media screen and (max-width:374px) { 
	#pictures .Items li img { max-width: 90%;max-height: 90%; }
	#pictures .Items li h3,#pictures .Items li p { width: 90%; }
}


.whatson_Contents {
  padding: 0 25px;
  margin: 60px auto 0
}
.whatson_Section {
  border-bottom: 1px solid #f1832c;
  padding-bottom: 70px;
  margin-bottom: 80px
}
.whatson_Section:last-child {
  border-bottom: none;
  margin-bottom: 0
}
.whatson_Section-heading {
  font-size: 20px;
  font-size: 2rem;
  font-weight: 400;
  color: #333;
  letter-spacing: .1em;
  margin-bottom: 50px
}
.whats_Section-heading-sub {
  position: relative;
  display: inline-block;
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: .1em;
  padding-left: 40px
}
.whats_Section-heading-sub:before {
  content: '';
  display: block;
  position: absolute;
  left: 10px;
  top: 50%;
  width: 20px;
  height: 1px;
  background-color: #f1832c
}
.whatson_Article {
  margin-bottom: 58px
}
.whatson_Article:last-child {
  margin-bottom: 0
}
.qa {
  color: #333
}
.qa .intro-Inner {
  padding: 12px 0 38px
}
.qa .intro-Heading {
  font-size: 20px;
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 2
}
html[lang=en] .qa .intro-Heading {
  letter-spacing: .1em
}
.qa .intro-Heading-small {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: .125em;
  line-height: 1.83333;
  padding: 0 2em
}
html[lang=en] .qa .intro-Heading-small {
  letter-spacing: .02em
}
.qa .index-Outer {
  margin: 0 0 80px
}
.qa .index {
  position: -webkit-sticky;
  position: sticky;
  top: 0
}
.qa .index-Inner {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  padding: 22px 0
}
.qa .index-Link {
  color: #888;
  font-weight: 400;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 2.28571;
  transition: .1s color cubic-bezier(.25, .46, .45, .94)
}
html[lang=en] .qa .index-Link {
  letter-spacing: .1em
}
.qa .index-Link:hover {
  color: #f1832c
}
.qa .faq-Inner {
  padding: 0
}
.qa .faq-Content {
  border-top: solid 1px #f1832c
}
.qa .faq-Content_Inner {
  padding: 70px 0
}
.qa .faq-Content_Header {
  margin: 0 0 46px;
  position: relative
}
.qa .faq-Content_Heading {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: .075em;
  line-height: 1.6;
  padding: 0 2.5em 0 0
}
html[lang=en] .qa .faq-Content_Heading {
  letter-spacing: .1em
}
.qa .faq-Arrow {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
.qa .faq-Arrow_Link {
  display: block;
  width: 40px
}
.qa .faq-Arrow_SvgContainer:before {
  padding: 100% 0 0
}
.qa .faq-List_Title:before, .qa .faq-List_Data:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0
}
.qa .faq-List_Title {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 1.71429;
  padding: 0 0 0 2.14286em;
  margin: 0 0 30px;
  position: relative
}
html[lang=en] .qa .faq-List_Title {
  letter-spacing: .1em
}
.qa .faq-List_Title:before {
  content: 'Q.'
}
.qa .faq-List_Data {
  font-weight: 300;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 1.71429;
  padding: 0 0 0 2.14286em;
  margin: 0 0 48px;
  position: relative
}
html[lang=en] .qa .faq-List_Data {
  letter-spacing: .1em
}
.qa .faq-List_Data:before {
  content: 'A.'
}
.qa .faq-List_Data:last-child {
  margin: 0
}
.qa .faq-List_ImgContenir {
  width: 100%;
  padding: 14px 0 8px
}
.qa .faq-List_Img {
  max-width: 100%;
  width: 100%;
  height: auto;
  line-height: 0;
  vertical-align: top
}
.qa .faq-List_Link {
  color: #333;
  border-bottom: #333 dotted 1px;
  display: inline-block;
  padding: .4em 0 .2em;
  transition: .1s color cubic-bezier(.25, .46, .45, .94), .1s border-bottom-color cubic-bezier(.25, .46, .45, .94)
}
.qa .faq-List_Link:hover {
  border-bottom-color: #f1832c;
  color: #f1832c
}

@media screen and (min-width:768px) {
  .buttons .buttons-item .anchor {
    -webkit-backface-visibility: hidden;
    transition-property: color, background-color, opacity;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  .buttons .buttons-item.register .anchor:hover {
    opacity: .7
  }
  .buttons .buttons-item.login .anchor:hover {
    background-color: #fff;
    color: #f1832c;
    border: 1px solid #f1832c
  }
  .buttons {
    max-width: 810px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 0;
    padding-right: 25px;
    padding-bottom: 80px;
    padding-left: 25px
  }
  .buttons-login {
    max-width: none;
    padding: 20px 60px
  }
  .buttons-login .inner {
    padding: 0
  }
  .button-proceed:hover {
    border: 1px solid #f1832c;
    background-color: #fff;
    color: #f1832c
  }
  .sw-Loading_Logo {
    width: 500px;
    height: 64px
  }
  .level {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    margin: -60px -20px 0
  }
  .level-item {
    position: relative;
    width: 50%;
    padding: 0 20px
  }
  .level-item:hover .title {
    color: #f1832c
  }
  .level-item:hover .text {
    border-bottom-color: #f1832c
  }
  .level-item:first-child {
    margin: 60px 0 0
  }
  .level-item .lead {
    min-height: 1.83333em
  }
  .level-item.medium {
    width: 33.33%
  }
  .st-event_List {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    margin: -30px -20px 0
  }
  .st-event_Item {
    width: 50%;
    padding: 30px 20px;
    margin: 0
  }
  .st-event_Lead {
    min-height: .125em
  }
  .header-Logo {
    max-width: none;
    width: 304px
  }
  .header-Util {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: center;
    align-items: center;
    position: absolute;
    right: 70px;
    top: 40px;
    width: 380px;
    height: 24px
  }
  html[lang=en] .header-Util {
    width: 410px
  }
  .header-Util_Item {
    display: block;
    width: 70px;
    transition-delay: 0s;
    transition-duration: .1s, .2s
  }
  html[lang=en] .header-Util_Item {
    width: 100px
  }
  .is-search-open .header-Util_Item {
    transition-duration: .1s, .4s;
    transition-delay: .1s
  }
  .header-Util_Item-link {
    width: 100%;
    font-size: 1.1rem;
    display: inline-block;
    padding: 8px 7px;
    border-radius: 24px;
    text-align: center;
    color: #888;
    background-color: #f8f7f1;
    letter-spacing: .2em;
    transition-property: color, background-color;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  html[lang=en] .header-Util_Item-link {
    letter-spacing: .02em
  }
  .header-Util_Item-link:hover {
    color: #fff;
    background-color: #666
  }
  .header-Util_Lang {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    margin-left: 29px
  }
  .header-Util_Lang-wrap {
    transition-duration: .1s, .4s;
    transition-delay: .05s
  }
  .header-Util_Lang-other {
    margin-left: 32px;
    transition-duration: .1s, .4s;
    transition-delay: .1s
  }
  .is-search-open .header-Util_Lang-other {
    transition-delay: 0s
  }
  .header-Util_Item, .header-Util_Lang-wrap, .header-Util_Lang-other {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    transition-timing-function: cubic-bezier(.39, .575, .565, 1)
  }
  .is-search-open .header-Util_Item, .is-search-open .header-Util_Lang-wrap, .is-search-open .header-Util_Lang-other {
    -webkit-transform: scale(0);
    transform: scale(0);
    opacity: 0
  }
  .header-Util_Search {
    margin-left: 32px;
    width: 20px;
    height: 20px;
    margin-top: 0
  }
  .header-Util_Search-icon {
    position: relative;
    left: auto;
    top: auto;
    -webkit-transform: none;
    transform: none;
    display: block
  }
  .header-Util_Search-icon .icon-search {
    cursor: pointer
  }
  .is-search-open .header-Util_Search-icon .icon-search {
    display: none
  }
  .header-Util_Search-input {
    padding: 10px 40px;
    display: none
  }
  .is-search-open .header-Util_Search-input {
    display: block
  }
  .header-Util_Search-form {
    overflow: hidden;
    position: absolute;
    right: -10px;
    top: -10px;
    width: 0;
    height: 40px;
    opacity: 0;
    visibility: hidden;
    transition-property: width, opacity, visibility, background, overflow;
    transition-duration: 0s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  .is-search-open .header-Util_Search-form {
    z-index: 999;
    width: 400px;
    opacity: 1;
    visibility: visible;
    background-color: #f8f7f1;
    transition-property: width, opacity, background;
    transition-duration: .6s, .5s;
    transition-timing-function: cubic-bezier(.19, 1, .22, 1) cubic-bezier(.25, .46, .45, .94);
    transition-delay: .1s, .3s
  }
  .is-search-open .header-Util_Search-form .icon-search {
    display: block;
    position: absolute;
    left: 5px;
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0)
  }
  .header-Util_Search-line {
    position: absolute;
    left: 0;
    top: 50%;
    display: block;
    width: 100%;
    height: 2px;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    background-color: transparent
  }
  .header-Util_Search-line:before, .header-Util_Search-line:after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #888
  }
  .header-Util_Search-line:before {
    -webkit-transform: translate3d(0, 0, 0) rotate(45deg);
    transform: translate3d(0, 0, 0) rotate(45deg)
  }
  .header-Util_Search-line:after {
    -webkit-transform: translate3d(0, 0, 0) rotate(-45deg);
    transform: translate3d(0, 0, 0) rotate(-45deg)
  }
  .header-Menu {
    display: -webkit-flex;
    display: flex
  }
  .is-open .header-Menu {
    display: none
  }
  .header-Links {
    display: -webkit-flex;
    display: flex;
    border-top: none;
    margin: 0;
    position: absolute;
    top: 84px;
    left: 0;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 26px 60px 60px
  }
  .header-Links .header-Links_Wrap {
    border-top: 0;
    display: -webkit-flex;
    display: flex
  }
  .is-open .header-Links .header-Links_Wrap {
    border-top: 1px solid #f1832c;
    width: 100%;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 37px 0
  }
  .is-open .header-Links .header-Links_Wrap:first-child {
    border-top: 0
  }
  .header-Links .header-Links_Item {
    border-bottom: none;
    width: 25%;
    padding: 0
  }
  .header-Links .header-Links_Item.has-child:before {
    content: none
  }
  .header-Links .header-Links_Link {
    color: #333;
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1
  }
  .header-Links .header-Links_Link:hover {
    color: #f1832c
  }
  .header-Links .header-Links_SecondLevel {
    display: none;
    max-height: none;
    padding: 0;
    margin: 11px 0 0
  }
  .is-open .header-Links .header-Links_SecondLevel {
    display: block
  }
  .header-Links .header-Links_Item-second.category-top {
    display: none
  }
  .header-Links .header-Links_Link-child {
    padding: 6px 0 0
  }
  .header-Links .header-Links_Link-child:hover {
    color: #f1832c
  }
  .footer-Sns {
    padding: 2px 0 0 6px
  }
  .footer-Links_Link:hover {
    color: #f1832c
  }
  .footer-Copy {
    width: 100%;
    margin-top: 32px
  }
  .head-Sort_Section {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between
  }
  .head-Sort_Title {
    width: 33.69141%;
    -webkit-flex-basis: 33.69141%;
    flex-basis: 33.69141%;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    padding-right: 20px;
    margin: 0
  }
  .head-Sort_Body {
    width: 66.30859%;
    -webkit-flex-basis: 66.30859%;
    flex-basis: 66.30859%;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    max-width: none
  }
  .head-Sort_BodyInner {
    -webkit-justify-content: flex-end;
    justify-content: flex-end
  }
  .head-Sort_Genre {
    width: calc(100% - 180px);
    -webkit-flex-basis: auto;
    flex-basis: auto
  }
  .head-Sort_GenreInner {
    -webkit-justify-content: flex-end;
    justify-content: flex-end
  }
  .head-Sort_Btn:nth-child(odd) .head-Sort_BtnInner {
    padding: 10px 0 0 10px
  }
  .head-Sort_Btn:first-child .head-Sort_BtnInner {
    padding: 10px 0 0
  }
  .head-Sort_Year {
    width: 180px;
    -webkit-flex-basis: 180px;
    flex-basis: 180px;
    -webkit-flex-shrink: 0;
    flex-shrink: 0
  }
  .head-Sort_Year + .head-Sort_Genre .head-Sort_GenreInner {
    -webkit-flex-direction: row;
    flex-direction: row
  }
  .head-Sort_Label-btn {
    transition-property: color, background-color;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  .head-Sort_Label-btn:hover {
    background-color: #666;
    color: #fff
  }
  .top .main {
    padding-top: 80px
  }
  .tp-MainVisual_Graphic {
    height: 100%
  }
  .tp-MainVisual_ScrollBtn {
    display: block;
    position: absolute;
    right: 64px;
    bottom: 61px;
    z-index: 12;
    width: 10px;
    height: 50px
  }
  .tp-MainVisual_ScrollBtn:before, .tp-MainVisual_ScrollBtn:after {
    content: '';
    display: block;
    position: absolute
  }
  .tp-MainVisual_ScrollBtn:before {
    left: 50%;
    top: 0;
    width: 10px;
    height: 10px;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
    border: 1px solid #fff;
    border-radius: 50%
  }
  .is-active .tp-MainVisual_ScrollBtn:before {
    -webkit-animation: mvNavigator 7s cubic-bezier(.645, .045, .355, 1) 2s infinite both;
    animation: mvNavigator 7s cubic-bezier(.645, .045, .355, 1) 2s infinite both
  }
  .tp-MainVisual_ScrollBtn:after {
    width: 1px;
    height: 40px;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #fff
  }
  .tp-NewsTicker_Heading {
    margin-top: 2px;
    margin-right: 30px
  }
  .tp-NewsTicker_Items {
    min-height: 30px
  }
  .tp-WhatsOn {
    padding: 65px 60px 75px
  }
  .tp-WhatsOn_More {
    right: 60px
  }
  .tp-WhatsOn_Items {
    margin: 38px 0 0
  }
  .tp-News {
    display: -webkit-flex;
    display: flex;
    padding: 74px 60px 77px
  }
  .tp-News_Summary {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    width: 33.3%;
    padding-right: 50px
  }
  .tp-News_More {
    margin-top: auto;
    position: relative;
    right: auto;
    top: auto
  }
  .tp-News_Items {
    max-width: 66.7%;
    padding-left: 10px
  }
  .tp-News_Item:first-child {
    padding-top: 0
  }
  .tp-News_Item-link {
    padding: 0
  }
  .tp-News_Item-link:hover {
    color: #f1832c
  }
  .tp-Support {
    padding: 75px 60px 70px
  }
  .tp-Support_Item {
    width: 33.3%;
    padding: 0 20px
  }
  .tp-Support_Items, .tp-Support_Item + .tp-Support_Item {
    margin-top: 37px
  }
  .tp-Support_Items {
    margin-left: -20px;
    margin-right: -20px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
  }
  .tp-Support_Item + .tp-Support_Item {
    margin-top: 0
  }
  .tp-Support_Card {
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    background-color: #fff
  }
  .tp-Support_Head {
    width: 100%
  }
  .tp-Support_Head:after {
    content: '';
    display: block;
    padding-top: 56.3%
  }
  .tp-Support_Desc {
    padding: 16px 0 0;
    font-size: 1.6rem
  }
  .tp-Support_Text {
    margin-top: 10px
  }
  .tp-Concept_Inner {
    padding: 75px 60px 0
  }
  .tp-Concept_Items {
    display: -webkit-flex;
    display: flex
  }
  .tp-Concept_Link:before {
    width: 6px;
    top: 44%;
    left: 53%
  }
  .tp-Concept_Link:after {
    width: 6px;
    top: 63%;
    left: 50%
  }
  .tp-Concept_Item {
    -webkit-flex: 1;
    flex: 1;
    border-bottom: 0;
    border-right: 1px solid #d8d8d8;
    box-sizing: border-box;
    margin-bottom: 0;
    padding-bottom: 8px
  }
  .tp-Concept_Item:last-child {
    border-right: 0
  }
  .tp-Concept_Heading {
    margin-top: 12px
  }
  .tp-Concept_Break {
    display: block
  }
  .tp-Concept_images {
    width: 1600px;
    margin-top: 28px
  }
  .tp-Concept_images-Item {
    width: 400px
  }
  .exhibition-Head {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start
  }
  .exhibition-Head_Title {
    padding-right: 40px
  }
  .exhibition-Head_Sort {
    -webkit-flex: 1;
    flex: 1;
    margin-top: 0;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    max-width: none
  }
  .exhibition-Head_Sort .exhibition-Head_Sort-genre, .exhibition-Head_Sort .exhibition-Head_Sort-year {
    width: auto
  }
  .exhibition-Head_Sort .exhibition-Head_Sort-genre {
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    margin-top: -5px
  }
  .exhibition-Head_Btn {
    min-width: 140px;
    margin: 5px;
    transition-property: color, background-color;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  .exhibition-Head_Btn:first-child {
    margin-top: 5px
  }
  .exhibition-Head_Btn:hover {
    color: #fff;
    background-color: #666
  }
  .calendar-Wrapper_Dates {
    padding: 0
  }
  .calendar-Wrapper_Body .cell.date.is-current .anchor:hover:before {
    background-color: #f1832c
  }
  .calendar-Wrapper_Body .cell .anchor {
    width: 80px;
    height: 80px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
  }
  .calendar-Wrapper_Body .cell .anchor:hover:before {
    content: '';
    display: inline-block;
    position: absolute;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    top: 50%;
    left: 50%;
    margin-left: -40px;
    margin-top: -40px;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background-color: #fce5d5;
    z-index: -1
  }
  .concept .concept-Header_Inner {
    padding: 54px 0 46px
  }
  .concept .concept-Nav {
    margin: 0 0 80px
  }
  .concept .concept-Nav_List {
    display: -webkit-flex;
    display: flex
  }
  .concept .concept-Nav_Item:last-child .concept-Nav_Link {
    border-right: none
  }
  .concept .concept-Nav_Link {
    border-bottom: none;
    border-right: 1px solid #d8d8d8;
    padding: 0 0 8px
  }
  .concept .concept-Detail_HeaderInner {
    padding: 72px 0 56px
  }
  .concept .concept-Detail_HeaderHeading {
    margin: 0 0 48px
  }
  .concept .concept-Gallery {
    height: 225px
  }
  .concept .concept-Tag_Link {
    transition-property: color, background-color;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  .concept .concept-Tag_Link:hover {
    background-color: #fff;
    color: #f1832c
  }
  .learning-Head_Label-btn {
    margin-top: 0
  }
  .learning-Keyvisual {
    margin-top: 80px
  }
  .learning-Keyvisual-texts {
    padding-right: 4.6875%;
    padding-left: 4.6875%;
    margin: 68px 0 0
  }
  .learning-Keyvisual-text,
  .learning-Middle_Texts /*20200930追加 */
	{
    width: 65.51724%
  }
  .learning-Top-content {
    width: 91%
  }
  .learning-Top-inner {
    margin-top: 0;
    border-top: 1px solid #f1832c
  }
  .learning-Top-inner:before, .learning-Top-inner:after {
    display: table;
    content: '';
    line-height: 0
  }
  .learning-Top-inner:after {
    clear: both
  }
  .learning-Top-detail-btn-wrapper {
    margin-top: 32px
  }
  .learning-Contents {
    width: 91%;
    margin: 75px auto 77px
  }
  .learning-Section {
    float: left;
    width: 48.3%;
    border-top: none;
    padding-top: 0;
    margin-right: 3.4%;
    margin-bottom: 0;
    margin-top: 60px
  }
  .learning-Section:before, .learning-Section:after {
    display: table;
    content: '';
    line-height: 0
  }
  .learning-Section:after {
    clear: both
  }
  .learning-Section:nth-child(even) {
    margin-right: 0
  }
  .learning-Section:last-child {
    margin-right: 0
  }
  .learning-Section-detail {
    float: right;
    width: 60%
  }
  .learning-Top-inner .learning-Section-detail {
    float: none;
    width: 100%
  }
  .learning-Section-figure {
    margin: 43px 0 19px
  }
  .learning-Content_Section {
    padding: 24px 0 0
  }
  .learning-ProgramHeader {
    padding: 50px 0 0
  }
  .learning-ProgramHeader + .learning-ProgramHeader {
    padding: 70px 0 0
  }
  .learning-Program {
    width: 50%;
    margin: 0
  }
  .learning-Program:nth-child(odd) {
    padding: 50px 30px 0 0
  }
  .learning-Program:nth-child(even) {
    padding: 50px 0 0 30px
  }
  .learning-Program-photo {
    margin: 0
  }
  .learning-Program-photo:nth-child(odd) {
    padding: 0 20px 0 0
  }
  .learning-Program-photo:nth-child(even) {
    padding: 0 0 0 20px
  }
  .learning-Program_Figure + .learning-Program_Texts {
    padding: 24px 0 0
  }
  .learning-Content_Section-title {
    margin: 0
  }
  .learning-Content_Card-wrapper:before, .learning-Content_Card-wrapper:after {
    display: table;
    content: '';
    line-height: 0
  }
  .learning-Content_Card-wrapper:after {
    clear: both
  }
  .learning-Content_Card {
    float: left;
    width: 30.9%;
    padding: 30px 0;
    margin: 0 3.4% 0 0
  }
  .learning-Content_Card:before, .learning-Content_Card:after {
    display: table;
    content: '';
    line-height: 0
  }
  .learning-Content_Card:after {
    clear: both
  }
  .learning-Content_Card:first-child {
    margin: 0 3.4% 0 0
  }
  .learning-Content_Card:nth-child(3n) {
    margin: 0
  }
  .learning-Content_Card:last-child {
    margin: 0
  }
  .learning-Content_Card-title .text {
    border-bottom: none
  }
  .support .support-Intro_Inner {
    padding: 54px 0 76px
  }
  .support .support-Intro_Header {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 0 0 54px
  }
  .support .support-Intro_Heading {
    width: 33.69141%;
    -webkit-flex-basis: 33.69141%;
    flex-basis: 33.69141%;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    padding-right: 20px;
    margin: 0
  }
  .support .support-Nav_Outer {
    width: 33.69141%;
    -webkit-flex-basis: 33.69141%;
    flex-basis: 33.69141%;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    max-width: none
  }
  .support .support-Nav {
    -webkit-justify-content: flex-end;
    justify-content: flex-end
  }
  .support .support-Nav_Inner {
    width: calc(100% - 180px);
    -webkit-flex-basis: auto;
    flex-basis: auto
  }
  .support .support-Nav_List {
    -webkit-justify-content: flex-end;
    justify-content: flex-end
  }
  .support .support-Nav_Item:nth-child(odd) .support-Nav_ItemInner {
    padding: 10px 0 0 10px
  }
  .support .support-Nav_Item:first-child .support-Nav_ItemInner {
    padding: 10px 0 0
  }
  .support .support-Nav_Link {
    transition-property: color, background-color;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  .support .support-Nav_Link:hover {
    background-color: #666;
    color: #fff
  }
  .support .support-Par {
    font-size: 1.2rem;
    letter-spacing: .125em;
    line-height: 1.83333
  }
  html[lang=en] .support .support-Par {
    letter-spacing: .02em
  }
  .support .support-Contents .support-Details {
    display: -webkit-flex;
    display: flex;
    padding: 74px 0 80px;
    -webkit-justify-content: space-between;
    justify-content: space-between
  }
  .support .support-Detail {
    border-bottom: none;
    width: 31.03448%;
    -webkit-flex-basis: 31.03448%;
    flex-basis: 31.03448%;
    padding: 0
  }
  .support .support-Detail_Link {
    transition-property: color, background-color;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  .support .support-Detail_Link:hover {
    background-color: #666;
    color: #fff
  }
  .tomonokai-Introduction {
    display: -webkit-flex;
    display: flex
  }
  .tomonokai-Introduction .tomonokai-Heading {
    margin-top: 7px
  }
  .tomonokai-Introduction .tomonokai-Text {
    line-height: 1.714
  }
  .tomonokai-Introduction_Image {
    min-width: 330px;
    padding-right: 20px;
    padding-left: 20px;
    margin-right: 20px
  }
  .tomonokai-Advantages_Items {
    margin-top: 55px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between
  }
  .tomonokai-Advantages_Item {
    width: 31.3%;
    margin-top: 0;
    padding-bottom: 55px
  }
  .tomonokai-Advantages_Text {
    font-size: 1.4rem;
    line-height: 1.714
  }
  .tomonokai-Advantages_Others {
    display: -webkit-flex;
    display: flex;
    margin-top: 0
  }
  .tomonokai-Advantages_Others .tomonokai-Heading_Sub {
    width: 200px
  }
  .tomonokai-Advantages_Notes {
    margin-top: 0
  }
  .tomonokai-Fee_Inner {
    display: -webkit-flex;
    display: flex;
    padding: 76px 0 72px
  }
  .tomonokai-Fee_Head {
    width: 25.86207%
  }
  .tomonokai-Fee_HeadInner {
    display: block;
    padding-right: 1.5em
  }
  .tomonokai-Fee_ImgContainer {
    margin: 0 0 34px
  }
  .tomonokai-Fee_Content {
    width: 74.13793%
  }
  .tomonokai-Apply_Inner {
    padding: 78px 0 68px
  }
  .tomonokai-Apply_Section {
    display: -webkit-flex;
    display: flex
  }
  .tomonokai-Apply_Head {
    width: 25.86207%;
    margin: 0 0 34px
  }
  .tomonokai-Apply_HeadInner {
    display: block;
    padding-right: 1.5em
  }
  .tomonokai-Apply_Contents {
    width: 74.13793%
  }
  .tomonokai-Apply_Content {
    margin: 0 0 46px
  }
  .tomonokai-Apply_ContentInner {
    display: -webkit-flex;
    display: flex
  }
  .tomonokai-Apply_ContentHead {
    width: 34.88372%
  }
  .tomonokai-Apply_ContentHeadInner {
    display: block;
    padding-right: 1.5em
  }
  .tomonokai-Apply_Texts {
    width: 65.11628%
  }
  .tomonokai-Apply_Button {
    margin: 12px 0
  }
  .tomonokai-Usage_Head {
    min-width: 35%;
    padding-right: 5%
  }
  .tomonokai-Usage_Item {
    display: -webkit-flex;
    display: flex
  }
  .tomonokai-Usage_Container {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column
  }
  .tomonokai-Usage_Image {
    width: 40%;
    margin-top: 0;
    padding-right: 0;
    padding-left: 0
  }
  .tomonokai-Usage_Steps {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    max-width: 960px;
    margin-left: auto;
    margin-right: auto
  }
  .tomonokai-Usage_Steps:before {
    top: 50px;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
    width: 58%;
    height: 0;
    border-right: 0;
    border-bottom: 1px dashed #f1832c
  }
  .tomonokai-Usage_Steps:before {
    width: 64%
  }
  .tomonokai-Usage_Step {
    width: 31.3%
  }
  .tomonokai-Usage_Step .image {
    padding-right: 0;
    padding-left: 0
  }
  .tomonokai-Usage_Step .text {
    padding-top: 10px;
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 0
  }
  .join-introduction {
    -webkit-flex-direction: column;
    flex-direction: column
  }
  .join-introduction .notice, .join-introduction .explain {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto
  }
  .join-introduction .notice {
    text-align: center
  }
  .form .form-wrapper {
    max-width: 810px;
    margin-right: auto;
    margin-left: auto
  }
  .form .row {
    display: -webkit-flex;
    display: flex;
    padding: 10px 0 14px
  }
  .form .head {
    width: 175px;
    margin-right: 25px;
    padding: 0;
    margin-top: 8px
  }
  .form .body {
    width: 360px
  }
  .form .notes {
    display: -webkit-flex;
    display: flex;
    white-space: nowrap
  }
  .form .column.column-select {
    padding-top: 4px
  }
  .form .column.column-radio {
    padding-top: 8px;
    padding-bottom: 0
  }
  .form .send-btn {
    width: 360px;
    margin-top: 60px;
    margin-right: auto;
    margin-left: auto
  }
  .link {
    position: absolute;
    right: 0;
    top: 25px;
    margin-top: 0
  }
  .form-family-wrap {
    max-width: 810px;
    margin-top: 50px;
    margin-right: auto;
    margin-left: auto
  }
  .send-btn:hover {
    background-color: #fff;
    border: 1px solid #f1832c;
    color: #f1832c
  }
  .br-pc {
    display: block
  }
  .tomonokai-Member_Login {
    max-width: 360px
  }
  .tomonokai-Flow {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto
  }
  .tomonokai-Flow_List:before {
    left: 40px
  }
  .tomonokai-Flow_List:after {
    left: 30px
  }
  .tomonokai-Flow_Item {
    padding: 20px 80px
  }
  .tomonokai-Step {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    padding: 20px 80px;
    max-width: 760px;
    margin-left: auto;
    margin-right: auto
  }
  .tomonokai-Step_Elem {
    padding-right: 0;
    padding-bottom: 0
  }
  .tomonokai-Step_Elem:last-child {
    padding-right: 0;
    padding-bottom: 0
  }
  .tomonokai-Step_Elem .icon-arrow01 {
    left: auto;
    right: -60px;
    bottom: 50%;
    -webkit-transform: translate3d(-50%, 50%, 0) rotate(-90deg);
    transform: translate3d(-50%, 50%, 0) rotate(-90deg)
  }
  .tomonokai-Parts_Buttons {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto
  }
  .tomonokai-Notice_Text {
    text-align: center;
    max-width: 760px;
    margin-left: auto;
    margin-right: auto
  }
  .tomonokai-Area_Title .anchor {
    opacity: 1;
    transition: opacity .4s cubic-bezier(.39, .575, .565, 1)
  }
  .tomonokai-Area_Title .anchor:hover {
    opacity: .8
  }
  .tomonokai-Box {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    max-width: 760px;
    margin-left: auto;
    margin-right: auto
  }
  .tomonokai-Box.item01 {
    -webkit-justify-content: center;
    justify-content: center
  }
  .tomonokai-Box_Item {
    width: 47.5%;
    margin-top: 0
  }
  .tomonokai-Caution {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto
  }
  .tomonokai-Caution_Title {
    padding-top: 8px
  }
  .tomonokai-Send {
    text-align: center
  }
  .tomonokai-Send_Texts {
    max-width: none
  }
  .tomonokai-Send_Definition {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center
  }
  .tomonokai-Send_Definition .text {
    padding-left: 1rem
  }
  .tomonokai-Send_Definition:last-child {
    margin-top: 0
  }
  .whatson_Section {
    padding-bottom: 75px;
    margin-bottom: 75px
  }
  .whatson_Section-heading {
    margin-bottom: 50px
  }
  .qa .intro-Inner {
    padding: 54px 0 0
  }
  .qa .qa-Contents_Inner {
    display: -webkit-flex;
    display: flex
  }
  .qa .index-Outer {
    -webkit-flex-basis: 300px;
    flex-basis: 300px;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    width: 300px;
    margin: 0
  }
  .qa .index-Inner {
    border-top: none;
    border-bottom: none;
    padding: 44px 40px 44px 0;
    transition: -webkit-transform .5s cubic-bezier(.39, .575, .565, 1);
    transition: transform .5s cubic-bezier(.39, .575, .565, 1);
    transition: transform .5s cubic-bezier(.39, .575, .565, 1), -webkit-transform .5s cubic-bezier(.39, .575, .565, 1)
  }
  .sw-Header-nottop.sw-Header-pinned .qa .index-Inner {
    -webkit-transform: translateY(140px);
    transform: translateY(140px)
  }
  .qa .index-Link {
    font-size: 1.2rem;
    line-height: 1.83333
  }
  .qa .index-Link-current {
    color: #333;
    font-weight: 600
  }
  .qa .faq {
    -webkit-flex-basis: 74.13793%;
    flex-basis: 74.13793%;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    width: 74.13793%
  }
  .qa .faq-Inner {
    padding: 44px 0 0
  }
  .qa .faq-Content_Header {
    margin: 0 0 42px
  }
  .qa .faq-Arrow {
    visibility: hidden
  }
  .qa .faq-List_ImgContenir {
    max-width: 330px
  }
}
@media screen and (min-width:1024px) {
  .main {
    padding-top: 140px
  }
  .sw-Container_Inner {
    padding-right: 60px;
    padding-left: 60px
  }
  .buttons {
    max-width: none;
    padding-left: 60px;
    padding-right: 60px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center
  }
  .buttons .buttons-item {
    margin-top: 0;
    margin-left: 10px
  }
  .buttons .buttons-item:first-child {
    margin-left: 0
  }
  .sw-Accordion {
    min-width: 140px
  }
  .sw-Accordion:hover:after {
    z-index: 99;
    border-right-color: #fff;
    border-bottom-color: #fff
  }
  .sw-Accordion_Title {
    transition-property: background;
    transition-duration: .5s;
    transition-timing-function: cubic-bezier(.39, .575, .565, 1)
  }
  .sw-Accordion_Title:hover {
    background-color: #666;
    color: #fff
  }
  .st-event_Item {
    width: 33.3%
  }
  .sw-Calendar {
    position: fixed;
    right: 60px;
    top: 90px;
    bottom: auto;
    left: auto;
    display: inline-block;
    -webkit-align-items: normal;
    align-items: normal;
    -webkit-justify-content: normal;
    justify-content: normal;
    width: 140px;
    height: 140px;
    padding: 20px;
    z-index: 30;
    transition-property: top;
    transition-duration: .4s;
    transition-timing-function: cubic-bezier(.39, .575, .565, 1)
  }
  .sw-Calendar.is-hide {
    top: -140px
  }
  .sw-Calendar_Detail {
    position: relative;
    width: 104px;
    height: 70px
  }
  .sw-Calendar_Month, .sw-Calendar_Day {
    font-weight: 100;
    font-size: 4rem;
    text-align: right;
    width: 44px
  }
  .sw-Calendar_Month {
    position: absolute;
    left: 2px;
    top: -10px;
    text-align: center
  }
  .sw-Calendar_Day {
    position: absolute;
    bottom: -5px;
    right: 5px;
    text-align: center
  }
  .sw-Calendar_State {
    display: inline-block;
    padding-top: 18px;
    padding-left: 0
  }
  .sw-Calendar_Icon {
    top: auto;
    bottom: 15px;
    right: 20px;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
  .sw-Calendar .icon-slash {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 65px;
    height: 65px;
    margin: 0
  }
  .header {
    height: 140px;
    border-bottom-color: #f1832c;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    top: 0;
    transition-property: top;
    transition-duration: .5s;
    transition-timing-function: cubic-bezier(.39, .575, .565, 1)
  }
  .header.is-open {
    width: 100%;
    height: 100%;
    z-index: 998;
    transition-duration: .5s
  }
  .header.is-hide {
    border-bottom-color: transparent;
    top: -140px;
    height: 140px
  }
  .header-Head {
    position: absolute;
    left: 60px;
    top: 30px;
    padding: 0
  }
  .header-MenuArea {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    width: 110px;
    right: auto;
    top: 55px;
    left: -8px
  }
  .header-MenuArea:after {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    width: 1px;
    height: 20px;
    background-color: #ccc
  }
  .is-open .header-MenuArea {
    width: 40px
  }
  .is-open .header-MenuArea:after {
    content: none
  }
  .header-MenuText {
    display: block;
    color: #888;
    padding-left: 2px;
    font-size: 1.2rem
  }
  .is-open .header-MenuText {
    display: none
  }
  .header-Inner {
    position: absolute;
    bottom: auto;
    right: auto;
    top: 0;
    padding: 0;
    height: 100%;
    display: block;
    visibility: visible;
    opacity: 1;
    transition-property: opacity;
    transition-duration: .5s;
    transition-timing-function: cubic-bezier(.39, .575, .565, 1);
    transition-delay: .4s
  }
  .footer {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 40px 60px 50px
  }
  .footer-Links {
    display: block;
    padding-left: 31px
  }
  .head-Sort {
    padding: 55px 60px 0
  }
  .head-Sort_Section {
    padding-right: 175px
  }
  .head-Sort_Title {
    width: 33.69141%;
    -webkit-flex-basis: 33.69141%;
    flex-basis: 33.69141%
  }
  .head-Sort_Body {
    width: 62.5%;
    -webkit-flex-basis: 62.5%;
    flex-basis: 62.5%
  }
  .head-Sort.head-Sort--type01 {
    padding: 70px 60px 0
  }
  .top .main {
    padding-top: 0
  }
  .tp-MainVisual_List {
    height: 100%
  }
  .tp-MainVisual_Item {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    background: linear-gradient(to bottom, transparent 0, rgba(0, 0, 0, .4) 100%);
    padding: 0 60px 145px
  }
  .tp-MainVisual .tp-MainVisual_Item-black .tp-MainVisual_Category {
    color: #333
  }
  .tp-MainVisual .tp-MainVisual_Item-black .tp-MainVisual_Heading {
    color: #333
  }
  .tp-MainVisual .tp-MainVisual_Item-black .tp-MainVisual_Heading:hover {
    color: #f1832c
  }
  .tp-MainVisual .tp-MainVisual_Item-black .tp-MainVisual_Term {
    color: #333
  }
  .tp-MainVisual_Category {
    color: #fff
  }
  .tp-MainVisual_Heading {
    color: #fff;
    margin-top: 11px;
    letter-spacing: .1em
  }
  html[lang=en] .tp-MainVisual_Heading {
    letter-spacing: .02em
  }
  .tp-MainVisual_Heading:hover {
    color: #f1832c
  }
  .tp-MainVisual_Term {
    color: #fff;
    margin-top: 10px;
    letter-spacing: .1em
  }
  .tp-MainVisual_Indicators {
    left: 60px;
    bottom: 12%
  }
  .tp-NewsTicker {
    width: 100%;
    padding: 19px 60px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    position: absolute;
    left: 0
  }
  .tp-NewsTicker_Items {
    -webkit-flex: 1;
    flex: 1;
    margin-top: 0;
    min-height: 0
  }
  .exhibition-Head {
    padding: 55px 60px 0
  }
  .exhibition-Head_Sort {
    padding-right: 175px
  }
  .exhibition-Head_Sort .exhibition-Head_Sort-year {
    margin-left: 15px;
    margin-right: 5px
  }
  .exhibition-Head_Sort .exhibition-Head_Sort-year:before {
    height: 90%
  }
  .exhibition-Section {
    padding: 75px 60px
  }
  .exhibition-Section:first-child {
    padding: 45px 60px 75px
  }
  .calendar-Header {
    padding: 55px 0 65px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between
  }
  .calendar-Header_Heading {
    margin: 0
  }
  .calendar-Header_Menu {
    padding: 0 180px 0 0
  }
  .calendar-Header_Menu .calendar-Header_Menu-year {
    width: auto
  }
  .calendar_Main {
    padding: 0 60px 80px
  }
  .calendar_Main .calendar-Container {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between
  }
  .calendar_Main .calendar-Container .calendar-Wrapper {
    width: 48.3%
  }
  .calendar_Main .calendar-Container .calendar-Detail {
    width: 51.7%
  }
  .calendar-Wrapper_Body .cell .anchor {
    width: 40px;
    height: 40px
  }
  .calendar-Wrapper_Body .cell .anchor:hover:before {
    width: 40px;
    height: 40px;
    margin: -20px 0 0 -20px
  }
  .calendar-Wrapper .row {
    border-width: 2px;
    padding: 0 20px
  }
  .calendar-Wrapper_Note {
    padding: 0 0 0 55px
  }
  .calendar-Detail {
    position: relative;
    margin-top: 0;
    padding: 0 0 0 5%
  }
  .calendar-Detail:after {
    content: '';
    background-color: #ddd;
    width: 1px;
    height: 93%;
    display: block;
    position: absolute;
    left: 0;
    bottom: 0
  }
  .calendar-Detail .calendar-Detail_Heading {
    display: inline-block;
    position: absolute;
    top: 0;
    left: -3.5%;
    -webkit-transform: rotate(-90deg) translate(-100%, -100%);
    transform: rotate(-90deg) translate(-100%, -100%);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0
  }
  .concept .concept-Nav_Inner {
    padding-right: 40px;
    padding-left: 40px
  }
  .learning-Section {
    width: 22.3%;
    margin-right: 3.4%
  }
  .learning-Section:nth-child(even) {
    margin-right: 3.4%
  }
  .learning-Section:nth-child(4n) {	/*	20200824	learning-Section:last-child {修正	*/
    margin-right: 0
  }
  .learning-Header_Inner {
    padding-right: 60px;
    padding-left: 60px
  }
  .learning-Content_Inner {
    padding-right: 60px;
    padding-left: 60px
  }
  .support .support-Intro_Header {
    padding-right: 175px
  }
  .support .support-Intro_Heading {
    width: 33.69141%;
    -webkit-flex-basis: 33.69141%;
    flex-basis: 33.69141%
  }
  .support .support-Nav_Outer {
    width: 62.5%;
    -webkit-flex-basis: 62.5%;
    flex-basis: 62.5%
  }
  .tomonokai .sw-Calendar {
    display: block
  }
  .tomonokai-Container {
    padding-bottom: 0;
    padding-left: 60px;
    padding-right: 60px
  }
  .tomonokai-Introduction_Image {
    min-width: 360px;
    margin-right: 40px
  }
  .tomonokai-Advantages_Others {
    margin-top: 27px
  }
  .tomonokai-Usage_Head {
    min-width: 25.86%;
    padding-right: 0
  }
  .tomonokai-Usage_Container {
    -webkit-flex-direction: row;
    flex-direction: row
  }
  .tomonokai-Usage_Image {
    min-width: 34.9%;
    padding-right: 3.4%
  }
  .tomonokai-Usage_Text {
    margin-top: 0
  }
  .tomonokai-Usage_Note {
    margin-top: 34px
  }
  .tomonokai-Usage_Notice.attention {
    margin-top: 37px
  }
  .tomonokai-Usage_Step {
    width: 26.9%
  }
  .join .sw-Calendar {
    display: block
  }
  .sw-Accordion-member {
    min-width: 200px
  }
  .sw-Accordion-member {
    width: 52.63%
  }
  .sw-Accordion-member .sw-Accordion_Text {
    font-size: 1.2rem
  }
  html[lang=en] .sw-Accordion-member .sw-Accordion_Text {
    letter-spacing: .02em
  }
  .tomonokai-Member {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: flex-start;
    align-items: flex-start
  }
  .tomonokai-Member_Head {
    width: 25.86%
  }
  .tomonokai-Member_Text {
    margin-top: 0;
    width: 37.5%
  }
  .tomonokai-Member_Login {
    width: 34.75%;
    margin-top: 0;
    margin-left: auto
  }
  .tomonokai-Member_Login-item.logout {
    opacity: 1;
    transition: opacity .4s cubic-bezier(.39, .575, .565, 1);
    width: calc(93% - 200px)
  }
  .tomonokai-Member_Login-item.logout:hover {
    opacity: .8
  }
  .whatson_Contents {
    padding: 0 60px;
    margin-top: 45px
  }
}
@media screen {
  [hidden ~ =screen] {
    display: inherit
  }
  [hidden ~ =screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important
  }
}
@media screen and (max-width:374px) {
  .sw-Accordion {
    max-width: 100%;
    width: 140px
  }
  .tp-MainVisual_Category {
    font-size: 1rem
  }
  .tp-MainVisual_Heading {
    font-size: 1.2rem
  }
  .tp-MainVisual_Term {
    font-size: 1rem
  }
  .calendar-Wrapper_Body .cell .anchor {
    font-size: 1.6rem
  }
  .support .support-Nav_List {
    -webkit-flex-direction: column;
    flex-direction: column
  }
  .support .support-Nav_Item + .support-Nav_Item .support-Nav_ItemInner {
    padding: 10px 0 0
  }
  .support .support-Nav_Link {
    width: auto
  }
  .sw-Accordion-member:after {
    right: 8px
  }
}
@media screen and (min-height:668px) and (max-width:1023px) {
  .sw-Calendar {
    padding: 30px 25px
  }
}@import'https://fonts.googleapis.com/css?family=Lato:100,300,400,700,900';
@charset 'UTF-8';
html {
  box-sizing: border-box;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%
}
*, :before, :after {
  background-repeat: no-repeat;
  box-sizing: inherit
}
:before, :after {
  text-decoration: inherit;
  vertical-align: inherit
}
* {
  padding: 0;
  margin: 0
}
audio:not([controls]) {
  display: none;
  height: 0
}
hr {
  overflow: visible
}
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
  display: block
}
summary {
  display: list-item
}
small {
  font-size: 80%
}
[hidden], template {
  display: none
}
abbr[title] {
  border-bottom: 1px dotted;
  text-decoration: none
}
a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects
}
a:active, a:hover {
  outline-width: 0
}
code, kbd, pre, samp {
  font-family: monospace, monospace
}
b, strong {
  font-weight: bolder
}
dfn {
  font-style: italic
}
mark {
  background-color: #ff0;
  color: #000
}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}
sub {
  bottom: -.25em
}
sup {
  top: -.5em
}
input {
  border-radius: 0
}
button, [type=button], [type=reset], [type=submit], [role=button] {
  cursor: pointer
}
[disabled] {
  cursor: default
}
[type=number] {
  width: auto
}
[type=search] {
  -webkit-appearance: textfield
}
[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}
textarea {
  overflow: auto;
  resize: vertical
}
button, input, optgroup, select, textarea {
  font: inherit
}
optgroup {
  font-weight: 700
}
button {
  overflow: visible
}
button::-moz-focus-inner, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  border-style: 0;
  padding: 0
}
button:-moz-focusring, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText
}
button, html [type=button], [type=reset], [type=submit] {
  -webkit-appearance: button
}
button, select {
  text-transform: none
}
button, input, select, textarea {
  background-color: transparent;
  border-style: none;
  color: inherit
}
select {
  -moz-appearance: none;
  -webkit-appearance: none
}
select::-ms-expand {
  display: none
}
select::-ms-value {
  color: currentColor
}
legend {
  border: 0;
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}
img {
  border-style: none
}
progress {
  vertical-align: baseline
}
svg:not(:root) {
  overflow: hidden
}
audio, canvas, progress, video {
  display: inline-block
}
[aria-busy=true] {
  cursor: progress
}
[aria-controls] {
  cursor: pointer
}
[aria-disabled] {
  cursor: default
}
::-moz-selection {
  background-color: #b3d4fc;
  color: #000;
  text-shadow: none
}
::selection {
  background-color: #b3d4fc;
  color: #000;
  text-shadow: none
}
html {
  font-size: 10px;
  overflow-y: visible;
  font-family: Lato, 'ヒラギノ角ゴ Pro W3', Hiragino Kaku Gothic Pro, 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', MS PGothic, sans-serif
}
body {
  overflow-x: hidden;
  -webkit-tap-highlight-color: transparent;
  width: 100%
}
body ::-moz-selection {
  background-color: #ccc
}
body ::selection {
  background-color: #ccc
}
li {
  list-style: none
}
a {
  text-decoration: none
}
button {
  outline: none;
  -webkit-tap-highlight-color: transparent
}
.main {
  padding-top: 80px
}
::-webkit-input-placeholder {
  color: #888
}
::-moz-placeholder {
  color: #888
}
:-ms-input-placeholder {
  color: #888
}
::placeholder {
  color: #888
}
@-webkit-keyframes placeholder {
  0% {
    background-position: -468px 0
  }
  100% {
    background-position: 468px 0
  }
}
@keyframes placeholder {
  0% {
    background-position: -468px 0
  }
  100% {
    background-position: 468px 0
  }
}
@-webkit-keyframes headerOpen {
  0% {
    opacity: 0
  }
  60% {
    opacity: 1
  }
}
@keyframes headerOpen {
  0% {
    opacity: 0
  }
  60% {
    opacity: 1
  }
}
@-webkit-keyframes mvNavigator {
  20%, 30% {
    top: 100%
  }
  0%, 50%, 100% {
    top: 0
  }
}
@keyframes mvNavigator {
  20%, 30% {
    top: 100%
  }
  0%, 50%, 100% {
    top: 0
  }
}
@-webkit-keyframes calendarDateFadeIn {
  0% {
    opacity: 0;
    display: block
  }
  100% {
    opacity: 1
  }
}
@keyframes calendarDateFadeIn {
  0% {
    opacity: 0;
    display: block
  }
  100% {
    opacity: 1
  }
}
@-webkit-keyframes loading {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}
@keyframes loading {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}
@-webkit-keyframes loading2 {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }
  100% {
    -webkit-transform: rotate(220deg);
    transform: rotate(220deg)
  }
}
@keyframes loading2 {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0)
  }
  100% {
    -webkit-transform: rotate(220deg);
    transform: rotate(220deg)
  }
}
@-webkit-keyframes loading3 {
  0% {
    -webkit-transform: rotate(-140deg);
    transform: rotate(-140deg)
  }
  50% {
    -webkit-transform: rotate(-160deg);
    transform: rotate(-160deg)
  }
  100% {
    -webkit-transform: rotate(140deg);
    transform: rotate(140deg)
  }
}
@keyframes loading3 {
  0% {
    -webkit-transform: rotate(-140deg);
    transform: rotate(-140deg)
  }
  50% {
    -webkit-transform: rotate(-160deg);
    transform: rotate(-160deg)
  }
  100% {
    -webkit-transform: rotate(140deg);
    transform: rotate(140deg)
  }
}
.sw-Container {
  width: 100%;
  margin: 0 auto
}
.sw-Container_Inner {
  width: 100%;
  padding-right: 25px;
  padding-left: 25pX
}
.sw-SvgContainer {
  display: block;
  position: relative
}
.sw-SvgContainer:before {
  content: '';
  display: block;
  width: 100%;
  position: relative
}
.sw-Svg {
  max-width: 100%;
  width: 100%;
  max-height: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0
}
.sw-SROnly {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0
}
.btn-More {
  position: relative;
  padding-right: 38px;
  line-height: 40px;
  letter-spacing: .1em;
	border: none;
}
html[lang=en] .btn-More {
  letter-spacing: .02em
}
.btn-More:hover .btn-More_Text {
  color: #f1832c
}
.btn-More_Text {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 300;
  color: #333
}
.btn-More_Icon {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  border: 1px solid #f1832c;
  border-radius: 50%
}
.btn-More_Icon:before, .btn-More_Icon:after {
  content: '';
  display: block;
  position: absolute;
  background-color: #f1832c;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}
.btn-More_Icon:before {
  width: 16px;
  height: 1px
}
.btn-More_Icon:after {
  width: 1px;
  height: 16px
}
.buttons {
  padding: 0 25px 70px
}
.buttons .buttons-item {
  text-align: center;
  width: 140px;
  margin-top: 10px
}
.buttons .buttons-item:first-child {
  margin-top: 0
}
.buttons .buttons-item:nth-child(3), 
.buttons .buttons-item:nth-child(5) { 
	width: 180px; 
}
@media screen and (max-width: 1023px){
	.buttons .buttons-item { width: 180px; }
}
.buttons .buttons-item .anchor {
  display: block;
  border-radius: 15px;
  padding: 8px 10px;
  background-color: #f8f7f1;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  border-style: solid;
  border-width: 1px;
  border-color: transparent;
  font-size: 12px;
  font-size: 1.2rem
}
html[lang=en] .buttons .buttons-item .anchor {
  letter-spacing: .02em
}
.buttons .buttons-item .anchor:hover {
  background-color: #666;
  color: #fff
}
.buttons .buttons-item.register .anchor {
  background: #333;
  color: #fff;
  border-color: #333
}
.buttons .buttons-item.login .anchor {
  background: #f1832c;
  color: #fff;
  border-color: #f1832c
}
.buttons-login {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 29;
  width: 100%;
  padding: 20px 25px;
  border-top: 1px solid #ddd;
  background-color: #fff;
  box-sizing: border-box
}
.buttons-login .inner {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  padding: 0 18px
}
.buttons-login .buttons-item {
  margin-left: 10px;
  margin-top: 0
}
.buttons-login .buttons-item:first-child {
  margin-left: 0
}
.button-proceed {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  display: block;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  width: 100%;
  height: 60px;
  background: #f1832c;
  border-radius: 10px;
  transition-property: background, color;
  transition-duration: .4s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}
html[lang=en] .button-proceed {
  letter-spacing: .1em
}
.button-proceed:first-child {
  margin-top: 0
}
.button-proceed .text {
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400
}
html[lang=en] .button-proceed .text {
  letter-spacing: .02em
}
.st-Label_Wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}
.st-Label_Item {
  color: #888;
  background-color: #fff;
  border: solid 1px #888;
  border-radius: 1.1em;
  display: inline-block;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.83333;
  text-align: center;
  min-width: 80px;
  padding: 0 .83333em;
  margin: 0 10px 10px 0
}
.st-Label_Item.is-held {
  background-color: #f1832c;
  border-color: #f1832c;
  color: #fff
}
.st-Label_Item.is-fee {
  border-color: #f1832c;
  color: #f1832c
}
/*.st-Label_Item.is-next {
  background-color: #888;
  color: #fff
}*/
.st-Label_Item.is-free {
  border-color: #888
}
.st-Label_Item.is-event {
  border-color: #f1832c;
  color: #f1832c
}
.sw-Accordion {
  position: relative;
  width: 140px;
  z-index: 10
}
.sw-Accordion:after {
  content: '';
  display: block;
  position: absolute;
  right: 20px;
  top: 10px;
  width: 10px;
  height: 10px;
  pointer-events: none;
  border-right: 1px solid #888;
  border-bottom: 1px solid #888;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}
.sw-Accordion.is-active .sw-Accordion_Inner, .sw-Accordion.is-active .sw-Accordion_Title {
  color: #fff
}
.sw-Accordion.is-active .sw-Accordion_Inner {
  background-color: #666;
  z-index: 99
}
.sw-Accordion.is-active:after {
  border-right-color: #fff;
  border-bottom-color: #fff;
  z-index: 99
}
.sw-Accordion-active:after {
  border-right-color: #fff;
  border-bottom-color: #fff;
  z-index: 99
}
.sw-Accordion_Inner {
  cursor: pointer;
  background-color: #f8f7f1;
  border-radius: 15px;
  font-weight: 300;
  text-align: center;
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  transition-property: background;
  transition-duration: .5s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}
.sw-Accordion_Inner-active {
  background-color: #666;
  color: #fff;
  z-index: 99
}
.sw-Accordion_Title {
  display: block;
  border-radius: 15px;
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 300;
  letter-spacing: .10714em;
  padding: 8px 10px 10px
}
html[lang=en] .sw-Accordion_Title {
  letter-spacing: .1em
}
.sw-Accordion_Title-active {
  color: #fff
}
.sw-Accordion_TitleLabel {
  padding: 0 10px 0 0
}
.sw-Accordion_Lists {
  display: none
}
.sw-Accordion_List {
  padding: 7px 0 0
}
.sw-Accordion_List:last-child {
  padding: 7px 0 10px
}
.sw-Accordion_List-selected {
  cursor: default;
  pointer-events: none
}
.sw-Accordion_List-selected .sw-Accordion_Text {
  color: #333
}
.sw-Accordion_Text {
  display: block;
  color: #ccc;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 300;
  letter-spacing: .10714em;
  padding: 0 10px 0 0
}
html[lang=en] .sw-Accordion_Text {
  letter-spacing: .1em
}
.sw-Accordion_Text:hover {
  color: #fff
}
.sw-Accordion_Overlay {
  z-index: 98;
  margin: auto;
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  display: none
}
.is-active .sw-Accordion_Overlay {
  display: block
}
.sw-Accordion_Overlay-active {
  display: block
}
.sw-Loading {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  background-color: #fff;
  z-index: 999
}
.sw-Loading_Logo {
  width: 289px;
  height: 37px;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto
}
.sw-Loading_Image {
  width: 100%;
  height: auto
}
.level-item {
  margin: 60px 0 0
}
.level-item:first-child {
  margin: 0
}
.level-item .head {
  background-color: #f8f7f1;
  position: relative
}
.level-item .head:after {
  content: '';
  display: block;
  padding: 56.25% 0 0
}
.level-item .body {
  margin: 30px 0 0
}
.level-item .image {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0)
}
.level-item .image.lazy {
  width: 100%;
  height: 100%
}
.level-item .lead {
  color: #888;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 300;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 6px 0 0
}
html[lang=en] .level-item .lead {
  letter-spacing: .02em
}
.level-item .title {
  color: #333;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 300;
  letter-spacing: .09375em;
  line-height: 1.625;
  margin: 8px 0 0
}
html[lang=en] .level-item .title {
  letter-spacing: .1em
}
.level-item .text {
  border-bottom: 1px dotted #333
}
.level-item .term {
  color: #888;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 10px 0 0
}
html[lang=en] .level-item .term {
  letter-spacing: .02em
}
.level-item .description {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  max-height: 5.5em;
  margin: 18px 0 0;
  overflow: hidden
}
html[lang=en] .level-item .description {
  letter-spacing: .02em
}
.level-item .ellipsis {
  display: block;
  color: #f1832c;
  font-size: 12px;
  font-size: 1.2rem;
  margin: 5px 0 0
}
.st-event_List {
  margin: 0
}
.st-event_Item {
  margin: 0 0 60px
}
.st-event_Item:last-child {
  margin: 0
}
.st-event_Item.is-accordion-open .st-event_Btn:before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}
.st-event_Item.is-accordion-open .st-event_Btn:after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}
.st-event_Header {
  background-color: #f8f7f1;
  display: -webkit-flex;
  display: flex
}
.st-event_ImgWrap {
  width: 56.25%;
  height: 100%;
  position: relative;
  overflow: hidden
}
.st-event_ImgWrap:after {
  content: '';
  display: block;
  padding: 100% 0 0
}
.st-event_Img {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0)
}
.st-event_Img.lazy {
  width: 100%;
  height: 100%
}
.st-event_Alt {
  display: block;
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .1em;
  text-align: center;
  width: 100%;
  padding: 0 1em;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
html[lang=en] .st-event_Alt {
  letter-spacing: .02em
}
.st-event_Label {
  width: 43.75%;
  position: relative
}
.st-event_LabelList {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  padding: 20px
}
.st-event_LabelItem {
  margin: 0 0 10px
}
.st-event_ContentInner {
  padding: 25px 0 16px
}
.st-event_Lead {
  color: #888;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 300;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 0 0 10px
}
html[lang=en] .st-event_Lead {
  letter-spacing: .02em
}
.st-event_Title {
  color: #333;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 300;
  letter-spacing: .09375emr;
  line-height: 1.625;
  margin: 0 0 10px
}
.st-event_Term {
  color: #888;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 0 0 20px
}
html[lang=en] .st-event_Term {
  letter-spacing: .02em
}
.st-event_Details {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  overflow: hidden
}
html[lang=en] .st-event_Details {
  letter-spacing: .02em
}
.st-event_Description {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  max-height: 5.5em;
  overflow: hidden
}
html[lang=en] .st-event_Description {
  letter-spacing: .02em
}
.st-event_Btn {
  color: #f1832c;
  border-bottom: 1px solid #f1832c;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: .10714em;
  text-align: left;
  width: 100%;
  padding: 8px 0;
  position: relative
}
.st-event_Btn:before, .st-event_Btn:after {
  content: '';
  display: block;
  position: absolute;
  width: 12px;
  height: 1px;
  background-color: #f1832c;
  bottom: 15px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-backface-visibility: hidden
}
.st-event_Btn:before {
  right: 15px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}
.st-event_Btn:after {
  right: 7px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}
html[lang=en] .st-event_Btn {
  letter-spacing: .1em
}
.st-event_Btn:before, .st-event_Btn:after {
  transition-property: opacity, color;
  transition-duration: .25s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1);
  transition-delay: .1s
}
.st-event_Btn:hover {
  color: #333;
  border-bottom-color: #333
}
.st-event_Btn:hover:before, .st-event_Btn:hover:after {
  background-color: #333
}
.st-event_Summary {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  height: 0
}
html[lang=en] .st-event_Summary {
  letter-spacing: .02em
}
.st-event_SummaryInner {
  padding: 1.83333em 0 0
}
.st-event_SummaryUnit {
  margin: 0 0 1.83333em
}
.st-event_SummaryUnit:last-child {
  margin: 0
}
.st-event_SummaryTitle {
  font-weight: 600
}
.st-event_SummaryDefine {
  font-weight: 300
}
.st-event_SummaryDefine a {
  border-bottom: 1px dotted #333;
  color: #333
}
.st-event_SummaryDefine a:hover {
  border-bottom: 1px dotted #f1832c;
  color: #f1832c
}
.sw-Calendar {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 29;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: center;
  align-items: center;
  width: 100%;
  background-color: #f1832c;
  padding: 16px 25px;
  border: none;
  border-top: 1px solid #fff;
  color: #fff
}
.sw-Calendar_Detail {
  line-height: 1
}
.sw-Calendar_Month, .sw-Calendar_Day {
  font-size: 20px;
  font-size: 2rem;
  color: #fff
}
.sw-Calendar_State {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 200;
  padding-left: 15px;
  color: #fff;
  line-height: 1
}
.sw-Calendar_Icon {
  position: absolute;
  right: 25px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
.sw-Calendar .icon-slash {
  width: 16px;
  height: 14px;
  margin: 0 5px
}
.sw-Calendar .icon-calender {
  width: 16px;
  height: 16px
}
.header {
  width: 100%;
  height: 80px;
  letter-spacing: .1em;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 30;
  transition-property: top;
  transition-duration: .9s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}
.header.is-hide {
  top: -80px
}
.header.is-open {
  height: 100%
}
.header-Wrapper {
  height: 100%;
  background-color: #fff;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%
}
.header-Head {
  padding: 22px 25px 20px;
  z-index: 33
}
.header-Logo {
  width: calc(100% - 50px);
  max-width: 275px
}
.header-Logo_Inner {
  display: block;
  line-height: 1
}
.header-Logo .logo-image {
  width: 100%;
  height: auto
}
.header-MenuArea {
  position: absolute;
  right: 20px;
  top: 20px;
  z-index: 33;
  width: 40px;
  height: 40px;
  cursor: pointer
}
.header-MenuBtn {
  overflow: hidden;
  position: relative;
  width: 40px;
  height: 40px
}
.header-MenuBtn_Line {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
  display: block;
  width: 20px;
  height: 2px;
  background-color: #888;
  transition-property: background;
  transition-duration: .2s;
  transition-timing-function: cubic-bezier(.95, .05, .795, .035)
}
.is-open .header-MenuBtn_Line {
  background-color: transparent;
  transition-property: top, background;
  transition-duration: .75s;
  transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}
.header-MenuBtn_Line:before, .header-MenuBtn_Line:after {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #888;
  transition-property: top, -webkit-transform;
  transition-property: transform, top;
  transition-property: transform, top, -webkit-transform;
  transition-duration: .3s;
  transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}
.is-open .header-MenuBtn_Line:before, .is-open .header-MenuBtn_Line:after {
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  transition-duration: .3s;
  transition-timing-function: cubic-bezier(.19, 1, .22, 1)
}
.header-MenuBtn_Line:before {
  top: -6px
}
.is-open .header-MenuBtn_Line:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 0
}
.header-MenuBtn_Line:after {
  -webkit-transform: rotate(0);
  transform: rotate(0);
  top: 6px
}
.is-open .header-MenuBtn_Line:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 0
}
.header-MenuText {
  display: none
}
.header-Inner {
  position: fixed;
  left: 0;
  top: 80px;
  right: 0;
  bottom: 0;
  margin: 0;
  z-index: 32;
  width: 100%;
  /*overflow-y: hidden;*/
  opacity: 0;
  padding: 22px 25px;
  visibility: hidden;
  -webkit-overflow-scrolling: touch;
  transition-property: opacity;
  transition-duration: .9s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}
.is-open .header-Inner {
  overflow-y: scroll;
  height: 100%;
  opacity: 1;
  padding-bottom: 100px;
  visibility: visible;
  transition-property: opacity;
  transition-duration: .9s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}
.header-Util {
  z-index: 36
}
.header-Util_Item {
  display: none
}
.header-Util_Lang {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  font-weight: 200
}
.header-Util_Lang-wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center
}
.header-Util_Lang-slash {
  padding-top: 5px
}
.header-Util_Lang-slash .icon-slash {
  width: 12px;
  height: 12px;
  margin: 0 9px
}
.header-Util_Lang-slash .icon-slash path {
  stroke: #888
}
.header-Util_Lang-link {
  font-weight: 300;
  font-size: 14px;
  font-size: 1.4rem;
  color: #333
}
html[lang=en] .header-Util_Lang-link {
  letter-spacing: .1em
}
.header-Util_Lang-link:hover, .header-Util_Lang-link.is-active {
  color: #f1832c
}
.header-Util_Lang-other {
  opacity: 1;
  transition: opacity .4s cubic-bezier(.39, .575, .565, 1);
  margin-left: 30px
}
.header-Util_Lang-other:hover {
  opacity: .8
}
.header-Util_Lang-linkOther {
  font-weight: 300;
  font-size: 14px;
  font-size: 1.4rem;
  color: #333;
  letter-spacing: .1em
}
.header-Util_Lang-linkOther:hover {
  color: #f1832c
}
.header-Util_Lang-item.is-active .header-Lang_Link {
  color: #f1832c
}
.header-Util_Item, .header-Util_Lang-wrap, .header-Util_Lang-other {
  transition-property: none;
  transition-duration: 0;
  transition-timing-function: ease;
  transition-delay: 0
}
.header-Util_Search {
  position: relative;
  margin-top: 33px;
  width: 100%;
  height: 40px
}
.header-Util_Search-icon {
  position: absolute;
  left: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 35
}
.header-Util_Search-icon .icon-search {
  opacity: 1;
  transition: opacity .4s cubic-bezier(.39, .575, .565, 1)
}
.header-Util_Search-icon .icon-search:hover {
  opacity: .8
}
.header-Util_Search-input {
  width: 100%;
  height: 100%;
  padding: 10px 10px 10px 40px;
  font-size: 12px;
  font-size: 1.2rem;
  outline: none;
  background-color: #f8f7f1
}
html[lang=en] .header-Util_Search-input {
  letter-spacing: .02em
}
.header-Util_Search-form .icon-search {
  font-size: 0;
  display: none
}
.header-Util_Search-close {
  overflow: hidden;
  position: absolute;
  z-index: 33;
  width: 20px;
  height: 20px;
  top: 50%;
  right: 10px;
  -webkit-transform: translate3d(0, -50%, 0);
  transform: translate3d(0, -50%, 0);
  opacity: 0
}
.is-search-open .header-Util_Search-close {
  opacity: 1;
  transition-property: opacity;
  transition-duration: 1s;
  transition-timing-function: cubic-bezier(.19, 1, .22, 1);
  transition-delay: .8s
}
.header-Menu {
  display: none;
  position: absolute;
  left: 174px;
  top: 84px
}
.header-Menu .header-Menu_Link {
  display: block;
  color: #888;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  padding: 10px 13px
}
html[lang=en] .header-Menu .header-Menu_Link {
  letter-spacing: .02em
}
.header-Menu .header-Menu_Link:hover {
  color: #f1832c
}
.header-Menu .header-Menu_Link.is-active {
  color: #f1832c
}
.header-Links {
  background-color: #fff;
  width: 100%;
  margin: 47px 0 0;
  visibility: hidden
}
.is-open .header-Links {
  -webkit-animation-name: headerOpen;
  animation-name: headerOpen;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: cubic-bezier(.39, .575, .565, 1);
  animation-timing-function: cubic-bezier(.39, .575, .565, 1);
  visibility: visible
}
.header-Links .header-Links_Wrap {
  border-top: 1px solid #f1832c
}
.header-Links .header-Links_Item {
  position: relative;
  padding: 18px 0 17px;
  border-bottom: 1px solid #ddd
}
.header-Links .header-Links_Item:last-child {
  border-bottom: 0
}
.header-Links .header-Links_Item.has-child.is-active:before {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}
.header-Links .header-Links_Item.has-child:before {
  content: '';
  display: block;
  position: absolute;
  right: 18px;
  top: 20px;
  width: 24px;
  height: 14px;
  pointer-events: none;
  background: url(/assets/images/icon_arrow_down.svg) no-repeat 0 0;
  transition: -webkit-transform .4s cubic-bezier(.25, .46, .45, .94);
  transition: transform .4s cubic-bezier(.25, .46, .45, .94);
  transition: transform .4s cubic-bezier(.25, .46, .45, .94), -webkit-transform .4s cubic-bezier(.25, .46, .45, .94)
}
.header-Links .header-Links_Link {
  display: block;
  color: #333;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: .1em;
  cursor: pointer
}
.header-Links .header-Links_Link.is-active {
  color: #f1832c
}
.header-Links .header-Links_SecondLevel {
  max-height: 0;
  overflow: hidden
}
.header-Links .header-Links_Item-second:first-child {
  padding: 18px 0 0
}
.header-Links .header-Links_Item-second:first-child .header-Links_Link-child {
  padding: 0
}
.header-Links .header-Links_Item-second:last-child {
  padding: 0 0 22px
}
.header-Links .header-Links_Link-child {
  display: block;
  color: #888;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 300;
  padding: 12px 0 0
}
html[lang=en] .header-Links .header-Links_Link-child {
  letter-spacing: .1em
}
.footer {
  padding: 41px 26px 120px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  border-top: 1px solid #f1832c;
  letter-spacing: .1em
}
.footer-Content {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}
.footer-Sns {
  display: -webkit-flex;
  display: flex;
  padding-left: 4px
}
.footer-Sns_Item .icon-twitter, .footer-Sns_Item .icon-fb {
  width: 32px;
  height: 32px
}
.footer-Sns_Link .icon-twitter path, .footer-Sns_Link .icon-fb path {
  transition: fill .25s cubic-bezier(.25, .46, .45, .94)
}
.footer-Sns_Link:hover .icon-twitter path, .footer-Sns_Link:hover .icon-fb path {
  fill: #666;
  transition: fill .25s cubic-bezier(.25, .46, .45, .94)
}
.footer-Sns_Item + .footer-Sns_Item {
  margin-left: 16px
}
.footer-Links {
  display: none
}
.footer-Links_Link {
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  color: #888;
  padding: 12px 13px
}
html[lang=en] .footer-Links_Link {
  letter-spacing: .02em
}
.footer-Links_Wrap {
  display: -webkit-flex;
  display: flex
}
.footer-Pagetop {
  display: block;
  position: relative;
  padding: 10px 35px 10px 10px;
  font-size: 12px;
  font-size: 1.2rem;
  color: #888
}
html[lang=en] .footer-Pagetop {
  letter-spacing: .02em
}
.footer-Pagetop:hover {
  color: #f1832c
}
.footer-Pagetop:before, .footer-Pagetop:after {
  content: '';
  display: block;
  position: absolute;
  width: 16px;
  height: 1px;
  background-color: #f1832c;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
.footer-Pagetop:before {
  right: 11px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}
.footer-Pagetop:after {
  right: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}
.footer-Copy {
  color: #333;
  margin-top: 33px;
  font-size: 10px;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.5;
  width: 100%
}
html[lang=en] .footer-Copy {
  letter-spacing: .02em
}
.footer-Copy_Text {
  font-size: 100%;
  letter-spacing: .1em
}
html[lang=en] .footer-Copy_Text {
  letter-spacing: .02em
}
.whatson .sw-Accordion, .exhibition_event .sw-Accordion {
  width: 100%
}
.head-Sort {
  padding: 20px 25px 0
}
.head-Sort_Title {
  letter-spacing: .1em;
  margin: 0 0 30px
}
.head-Sort_Title-en, .head-Sort_Title-sub {
  display: inline-block
}
.head-Sort_Title-en {
  color: #333;
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  padding-right: 20px
}
html[lang=en] .head-Sort_Title-en {
  letter-spacing: .1em
}
.head-Sort_Title-sub {
  color: #333;
  font-weight: 400;
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 8px
}
html[lang=en] .head-Sort_Title-sub {
  letter-spacing: .02em
}
.head-Sort_Body {
  max-width: 340px
}
.head-Sort_BodyInner {
  display: -webkit-flex;
  display: flex
}
.head-Sort_Genre {
  -webkit-flex-basis: 50%;
  flex-basis: 50%;
  -webkit-flex-grow: 1;
  flex-grow: 1;
  -webkit-order: 0;
  order: 0
}
.head-Sort_GenreInner {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -10px 0 0
}
.head-Sort_Btn + .head-Sort_Btn .head-Sort_BtnInner {
  padding: 10px 0 0 10px
}
.head-Sort_Btn:nth-child(odd) .head-Sort_BtnInner {
  padding: 10px 0 0
}
.head-Sort_Btn:first-child .head-Sort_BtnInner {
  padding: 10px 0 0
}
.head-Sort_Year {
  -webkit-flex-basis: 50%;
  flex-basis: 50%;
  -webkit-order: 1;
  order: 1;
  position: relative
}
.head-Sort_Year:before {
  background-color: #ddd;
  content: '';
  display: block;
  width: 1px;
  height: 100%;
  position: absolute;
  left: 20px;
  top: 0
}
.head-Sort_Year + .head-Sort_Genre .head-Sort_BtnInner {
  padding: 10px 0 0 10px
}
.head-Sort_Year + .head-Sort_Genre .head-Sort_GenreInner {
  -webkit-flex-direction: column;
  flex-direction: column
}
.head-Sort_YearInner {
  padding: 0 0 0 40px
}
.head-Sort_Label-btn {
  display: inline-block;
  background-color: #f8f7f1;
  border-radius: 15px;
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .1em;
  text-align: center;
  width: 100%;
  min-width: 140px;
  padding: 8px 10px;
	border: none;
}
html[lang=en] .head-Sort_Label-btn {
  letter-spacing: .02em
}
.head-Sort_Label-btn.is-active {
  background-color: #666;
  color: #fff
}
.head-Sort_LabelPhrase {
  display: inline-block
}
.head-Sort.head-Sort--type01 {
  display: block;
  padding: 20px 25px 0
}
.head-Sort.head-Sort--type01 .head-Sort_Title {
  width: 100%;
  padding-right: 0
}
html[lang=en] .head-Sort.head-Sort--type01 .head-Sort_Title {
  letter-spacing: .1em
}
.head-Sort.head-Sort--type01 .head-Sort_Title .head-Sort-text {
  color: #333;
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem
}
.top {
  letter-spacing: .1em
}
.top .header {
  border-bottom: 0
}
.tp-MainVisual {
  position: relative;
  background-color: #f8f7f1;
  min-height: 480px
}
.tp-MainVisual_List {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 10
}
.tp-MainVisual_List:nth-child(n+2) {
  z-index: 1;
  display: none
}
.tp-MainVisual_Graphic {
  width: 100%;
  background-position: 50% 50%;
  background-size: cover;
  min-height: 240px
}
.tp-MainVisual_Item {
  position: relative;
  padding: 18px 25px 40px;
  background-color: #f8f7f1;
  min-height: 240px
}
.tp-MainVisual_Category {
  font-size: 12px;
  font-size: 1.2rem;
  color: #888;
  letter-spacing: .1em
}
html[lang=en] .tp-MainVisual_Category {
  letter-spacing: .02em
}
.tp-MainVisual_Heading {
  display: block;
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  text-decoration: none;
  margin-top: 12px
}
.tp-MainVisual_Term {
  font-size: 12px;
  font-size: 1.2rem;
  color: #888;
  margin-top: 10px
}
html[lang=en] .tp-MainVisual_Term {
  letter-spacing: .02em
}
.tp-MainVisual_Img {
  width: 100%;
  height: auto
}
.tp-MainVisual_Indicators {
  position: absolute;
  left: 25px;
  bottom: 5%;
  z-index: 11
}
.tp-MainVisual_Indicator {
  display: inline-block;
  width: 10px;
  height: 10px;
  border: 1px solid #f1832c;
  border-radius: 50%;
  background-color: #fff;
  cursor: pointer
}
.tp-MainVisual_Indicator + .tp-MainVisual_Indicator {
  margin-left: 5px
}
.tp-MainVisual_Indicator.is-active {
  background-color: #f1832c
}
.tp-MainVisual_ScrollBtn {
  display: none
}
.tp-NewsTicker {
  padding: 20px 25px;
  border-bottom: 1px solid #f1832c;
  z-index: 10;
  background-color: #fff
}
.tp-NewsTicker_Heading {
  font-size: 14px;
  font-size: 1.4rem;
  color: #f1832c;
  font-weight: 600
}
.tp-NewsTicker_Items {
  overflow: hidden;
  position: relative;
  margin-top: 10px;
  min-height: 45px
}
.tp-NewsTicker_Item {
  position: absolute;
  left: 0;
  top: 0
}
.tp-NewsTicker_Link {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1.8;
  color: #333
}
.tp-NewsTicker_Link:hover {
  color: #f1832c
}
.tp-WhatsOn {
  position: relative;
  padding: 63px 25px 70px
}
.tp-WhatsOn_Title-en, .tp-WhatsOn_Title-sub {
  letter-spacing: .1em
}
.tp-WhatsOn_Title-en {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  display: block;
  color: #333
}
html[lang=en] .tp-WhatsOn_Title-en {
  letter-spacing: .1em
}
.tp-WhatsOn_Title-sub {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  display: block;
  margin-top: 8px;
  color: #333
}
html[lang=en] .tp-WhatsOn_Title-sub {
  letter-spacing: .02em
}
.tp-WhatsOn_More {
  position: absolute;
  right: 30px;
  top: 80px
}
.tp-WhatsOn_Items {
  margin-top: 37px
}
.tp-News {
  position: relative;
  padding: 74px 25px 75px;
  background-color: #f8f7f1
}
.tp-News_Title-en {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  display: block;
  color: #333
}
.tp-News_Title-sub {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  display: block;
  margin-top: 8px;
  color: #333
}
.tp-News_More {
  position: absolute;
  right: 29px;
  top: 79px
}
.tp-News_Notice {
  margin-top: 35px
}
.tp-News_Notice-head {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .1em;
  color: #333
}
.tp-News_Notice-content {
  margin-top: 11px;
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  line-height: 1.8
}
.tp-News_Item {
  padding: 31px 0 5px
}
.tp-News_Item-head {
  font-weight: 400;
  font-size: 14px;
  font-size: 1.4rem;
  color: #888
}
.tp-News_Item-link {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 10px;
  line-height: 1.7;
  color: #333
}
.tp-Support {
  position: relative;
  padding: 75px 25px 70px
}
.tp-Support_Title-en {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  display: block;
  letter-spacing: .1em;
  color: #333
}
.tp-Support_Title-sub {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  display: block;
  margin-top: 8px;
  color: #333
}
.tp-Support_More {
  position: absolute;
  right: 25px;
  top: 70px
}
.tp-Support_Items, .tp-Support_Item + .tp-Support_Item {
  margin-top: 34px
}
.tp-Support_Card {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  background-color: #f8f7f1
}
.tp-Support_Head {
  width: 37%;
  background-position: 50% 50%;
  background-size: cover;
  background-repeat: no-repeat
}
.tp-Support_Head:after {
  content: '';
  display: block;
  padding-top: 100%
}
.tp-Support_Head.lazy {
  background-color: #f6f7f8;
  background-repeat: no-repeat;
  background-image: linear-gradient(to right, #eee 8%, #ddd 18%, #eee 33%);
  background-size: 800px auto;
  -webkit-animation-name: placeholder;
  animation-name: placeholder;
  -webkit-animation-duration: .9s;
  animation-duration: .9s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear
}
.tp-Support_Desc {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  width: 63%;
  padding-left: 20px;
  color: #333
}
.tp-Support_Text {
  margin-top: 14px;
  font-size: 14px;
  font-size: 1.4rem;
  color: #333;
  line-height: 1.8
}
.tp-Concept {
  padding-bottom: 80px
}
.tp-Concept_Inner {
  position: relative;
  padding: 82px 6.67% 0
}
.tp-Concept_Title-en {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  display: block;
  letter-spacing: .1em;
  color: #333
}
.tp-Concept_Title-sub {
  display: block;
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 300;
  margin: 8px 0 0
}
.tp-Concept_Items {
  margin-top: 40px;
  display: block
}
.tp-Concept_Link {
  color: #f1832c;
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1px solid #f1832c;
  position: relative;
  margin: 20px auto 0
}
.tp-Concept_Link:before, .tp-Concept_Link:after {
  content: '';
  background-color: #f1832c;
  position: absolute;
  width: 33%;
  height: 1px
}
.tp-Concept_Link:before {
  top: 41%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) rotate(45deg);
  transform: translate3d(-50%, -50%, 0) rotate(45deg)
}
.tp-Concept_Link:after {
  top: 61%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0) rotate(-45deg);
  transform: translate3d(-50%, -50%, 0) rotate(-45deg)
}
.tp-Concept_Item {
  border-bottom: 1px solid #d8d8d8;
  padding-bottom: 40px;
  margin-bottom: 39px;
  border-right: 0
}
.tp-Concept_Item:last-child {
  margin-bottom: 0;
  border-bottom: 0;
  padding-bottom: 0
}
.tp-Concept_Item:hover .tp-Concept_Item-text {
  color: #f1832c
}
.tp-Concept_Item-number {
  display: block;
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 300;
  text-align: center
}
.tp-Concept_Item-text {
  font-weight: 400;
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.7;
  display: block;
  text-align: center;
  margin-top: 15px;
  transition: color .3s cubic-bezier(.25, .46, .45, .94)
}
.tp-Concept_Image {
  width: 100%;
  height: auto
}
.tp-Concept_Heading {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .1em;
  line-height: 1.7;
  margin-top: 15px
}
.tp-Concept_Break {
  display: none
}
.tp-Concept_images-Wrapper {
  overflow: hidden
}
.tp-Concept_images-Inner {
  overflow: hidden
}
.tp-Concept_images-Inner:before, .tp-Concept_images-Inner:after {
  display: table;
  content: '';
  line-height: 0
}
.tp-Concept_images-Inner:after {
  clear: both
}
.tp-Concept_images {
  margin-top: 41px;
  float: left;
  will-change: transform
}
.tp-Concept_images:before, .tp-Concept_images:after {
  display: table;
  content: '';
  line-height: 0
}
.tp-Concept_images:after {
  clear: both
}
.tp-Concept_images-Item {
  float: left;
  width: 240px
}
.tp-Concept_images-Item-image {
  width: 100%;
  height: auto
}
.exhibition-Head {
  padding: 20px 25px 0
}
.exhibition-Head_Title {
  letter-spacing: .1em
}
.exhibition-Head_Title-en, .exhibition-Head_Title-sub {
  display: inline-block
}
.exhibition-Head_Title-en {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  color: #333
}
.exhibition-Head_Title-sub {
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 8px;
  color: #333;
  padding-left: 30px
}
.exhibition-Head_Sort {
  position: relative;
  display: -webkit-flex;
  display: flex;
  text-align: center;
  margin-top: 30px;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  max-width: 320px
}
.exhibition-Head_Sort .exhibition-Head_Sort-genre, .exhibition-Head_Sort .exhibition-Head_Sort-year {
  width: 50%
}
.exhibition-Head_Sort .exhibition-Head_Sort-genre {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}
.exhibition-Head_Sort .exhibition-Head_Sort-year {
  position: relative;
  padding-left: 20px;
  margin-left: 20px
}
.exhibition-Head_Sort .exhibition-Head_Sort-year:before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 1px;
  background-color: #ddd
}
.exhibition-Head_Btn {
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 10px;
  letter-spacing: .1em;
  color: #333;
  background-color: #f8f7f1;
  border-radius: 15px;
  padding: 8px 10px;
  max-width: 140px
}
html[lang=en] .exhibition-Head_Btn {
  letter-spacing: .02em
}
.exhibition-Head_Btn.is-active {
  background-color: #666;
  color: #fff
}
.exhibition-Head_Btn:first-child {
  margin-top: 0
}
.exhibition-Heading-h3 {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  color: #333;
  letter-spacing: .1em;
  margin-bottom: 50px
}
.exhibition-Heading-sub {
  position: relative;
  display: inline-block;
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 300;
  letter-spacing: .1em;
  padding-left: 40px
}
.exhibition-Heading-sub:before {
  content: '';
  display: block;
  position: absolute;
  left: 10px;
  top: 50%;
  width: 20px;
  height: 1px;
  background-color: #f1832c
}
.exhibition-Section {
  padding: 80px 25px 70px;
  border-top: 1px solid #f1832c
}
.exhibition-Section:first-child {
  padding-top: 60px;
  border-top: none
}
.calendar-Header {
  padding: 20px 25px 80px
}
.calendar-Header_Heading {
  margin: 0 0 30px
}
.calendar-Header_Heading-en {
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: .1em;
  line-height: 2
}
html[lang=en] .calendar-Header_Heading-en {
  letter-spacing: .02em
}
.calendar-Header_Heading-sub {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 300;
  letter-spacing: .125em;
  line-height: 1.83333;
  padding: 0 2em
}
html[lang=en] .calendar-Header_Heading-sub {
  letter-spacing: .02em
}
.calendar-Header_Menu {
  display: -webkit-flex;
  display: flex;
  text-align: center;
  position: relative
}
.calendar-Header_Menu .calendar-Header_Menu-year {
  width: 43%
}
.wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-end;
  align-items: flex-end
}
.wrap .day {
  font-weight: 300;
  font-size: 40px;
  font-size: 4rem;
  line-height: 1;
  color: #333
}
.wrap .day-name {
  padding: 0 0 2px 8px;
  color: #333
}
.wrap .year, .wrap .month, .wrap .weekday {
  font-size: 12px;
  font-size: 1.2rem;
  text-transform: uppercase;
  letter-spacing: .1em;
  display: block;
  color: #333
}
html[lang=en] .wrap .year, html[lang=en] .wrap .month, html[lang=en] .wrap .weekday {
  letter-spacing: .02em
}
.wrap .month {
  margin-top: 4px
}
.calendar-Buttons {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  width: 80px
}
.calendar-Buttons .calendar-Buttons_Button {
  width: 40px;
  height: 40px
}
.calendar-Buttons .calendar-Buttons_Button .icon-arrow01 {
  width: 24px;
  height: 14px
}
.calendar-Buttons .calendar-Buttons_Button .icon-arrow01 path {
  stroke: #888
}
.calendar-Buttons .calendar-Buttons_Button:disabled {
  opacity: .5
}
.calendar-Buttons .calendar-Buttons_Button:not(:disabled):hover path {
  stroke: #f1832c
}
.calendar-Buttons .calendar-Buttons_Button-prev .icon-arrow01 {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg)
}
.calendar-Buttons .calendar-Buttons_Button-next {
  margin-left: 5px
}
.calendar-Buttons .calendar-Buttons_Button-next .icon-arrow01 {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg)
}
.calendar_Main {
  min-height: 500px;
  position: relative
}
.calendar_Main .loader-container {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  opacity: 1;
  overflow: visible;
  visibility: visible;
  transition: opacity .1s, overflow 0s, height 0s, visibility 0s
}
.calendar_Main .loader-container.loader-container-loaded {
  height: 0;
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  transition: opacity .1s, overflow 0s .1s, height 0s .1s, visibility 0s .1s
}
.calendar_Main .loader-container:before {
  background-color: #fff;
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: .5
}
.calendar_Main .loader {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 32px;
  height: 32px;
  -webkit-animation-name: loading;
  animation-name: loading;
  -webkit-animation-duration: 4.8s;
  animation-duration: 4.8s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite
}
.calendar_Main .loader-Span {
  display: block;
  width: 32px;
  height: 32px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  clip: rect(0, 32px, 32px, 16px);
  -webkit-animation-name: loading2;
  animation-name: loading2;
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite
}
.calendar_Main .loader-Span:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  height: 32px;
  width: 32px;
  clip: rect(0, 32px, 32px, 16px);
  border: 3px solid #f1832c;
  border-radius: 50%;
  -webkit-animation-name: loading3;
  animation-name: loading3;
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
  -webkit-animation-timing-function: cubic-bezier(.77, 0.000, .175, 1.000);
  animation-timing-function: cubic-bezier(.77, 0.000, .175, 1.000);
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite
}
.calendar-Wrapper_Dates {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding: 0 20px;
  margin: 0 0 30px
}
.calendar-Wrapper_Body {
  width: 100%;
  text-align: center;
  margin-top: 30px
}
.calendar-Wrapper_Body .cell {
  width: 14.28571%
}
.calendar-Wrapper_Body .cell.day {
  font-size: 11px;
  font-size: 1.1rem;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  color: #888;
  padding-bottom: 10px
}
html[lang=en] .calendar-Wrapper_Body .cell.day {
  letter-spacing: .02em
}
.calendar-Wrapper_Body .cell.day.weekend {
  color: #f1832c
}
.calendar-Wrapper_Body .cell.date {
  font-weight: 200;
  position: relative
}
.calendar-Wrapper_Body .cell.date.weekend .anchor {
  color: #f1832c
}
.calendar-Wrapper_Body .cell.date.close .anchor {
  color: #ccc;
  border: 1px solid #ddd
}
.calendar-Wrapper_Body .cell.date.close .anchor:hover:before {
  content: none
}
.calendar-Wrapper_Body .cell.date:after {
  content: '';
  display: block;
  padding-top: 100%
}
.calendar-Wrapper_Body .cell.date.is-active .anchor {
  background-color: #fce5d5;
  color: #888
}
.calendar-Wrapper_Body .cell.date.is-current .anchor {
  background-color: #f1832c;
  color: #fff
}
.calendar-Wrapper_Body .cell .anchor {
  cursor: pointer;
  border-radius: 50%;
  display: -webkit-flex;
  display: flex;
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 300;
  -webkit-align-items: center;
  align-items: center;
  letter-spacing: .05em;
  -webkit-justify-content: center;
  justify-content: center;
  width: 80%;
  height: 80%;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}
html[lang=en] .calendar-Wrapper_Body .cell .anchor {
  letter-spacing: .1em
}
.calendar-Wrapper .row {
  display: -webkit-flex;
  display: flex;
  padding: 0 15px
}
.calendar-Wrapper .row:before {
  display: block;
  content: ''
}
.calendar-Wrapper .row.date {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  border-bottom: 1px solid #ddd
}
.calendar-Wrapper .row.date:first-child {
  border-top: 1px solid #ddd
}
.calendar-Wrapper .row.offset-1:before {
  width: 14.28571%
}
.calendar-Wrapper .row.offset-2:before {
  width: 28.57143%
}
.calendar-Wrapper .row.offset-3:before {
  width: 42.85714%
}
.calendar-Wrapper .row.offset-4:before {
  width: 57.14286%
}
.calendar-Wrapper .row.offset-5:before {
  width: 71.42857%
}
.calendar-Wrapper .row.offset-6:before {
  width: 85.71429%
}
.calendar-Wrapper_Note {
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 1.71429;
  margin: 20px 0 0;
  padding: 0 20px 0 55px;
  position: relative
}
html[lang=en] .calendar-Wrapper_Note {
  letter-spacing: .02em
}
.calendar-Wrapper_Note:before {
  content: '';
  border: 1px solid #ddd;
  border-radius: 50%;
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  left: 25px;
  top: 0
}
.calendar-Detail {
  margin-top: 35px;
  padding: 0 20px 80px
}
.calendar-Detail .calendar-Detail_Dates {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_List {
  position: relative;
  margin: 0 0 30px
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_List:last-child {
  margin: 0
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_Empty {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333
}
html[lang=en] .calendar-Detail .calendar-Detail_Body .calendar-Detail_Empty {
  letter-spacing: .02em
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_Item {
  display: block;
  box-sizing: border-box;
  background-color: #f1832c;
  border-color: #f1832c;
  border-radius: 10px;
  border-width: 1px;
  border-style: solid;
  color: #fff;
  padding: 12px 10px 12px 20px;
  margin: 0 0 10px;
  transition-property: background, color;
  transition-duration: .4s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_Item:last-child {
  margin: 0
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_Item:hover {
  background-color: #fff;
  color: #f1832c
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_Item-news {
  background-color: #fff;
  border: 1px solid #333;
  color: #333;
  font-weight: 600
}
.calendar-Detail .calendar-Detail_Body .calendar-Detail_Item-news:hover {
  background-color: #666;
  color: #fff
}
.calendar-Detail .calendar-Detail_Heading {
  color: #333;
  font-size: 10px;
  font-size: 1rem;
  font-weight: 300;
  letter-spacing: .15em;
  line-height: 2.2;
  margin: 0 0 4px
}
html[lang=en] .calendar-Detail .calendar-Detail_Heading {
  letter-spacing: .02em
}
.calendar-Detail .calendar-Detail_SubTitle {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 300;
  letter-spacing: .125em;
  line-height: 1.83333
}
html[lang=en] .calendar-Detail .calendar-Detail_SubTitle {
  letter-spacing: .02em
}
.calendar-Detail .calendar-Detail_Title {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 1.71429;
  margin: 4px 0 0
}
html[lang=en] .calendar-Detail .calendar-Detail_Title {
  letter-spacing: .1em
}
.calendar-Detail .calendar-Detail_Term {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 300;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 6px 0 0
}
html[lang=en] .calendar-Detail .calendar-Detail_Term {
  letter-spacing: .02em
}
.concept {
  color: #333
}
.concept .concept-Header_Inner {
  padding: 12px 0 0
}
.concept .concept-Header_Heading {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: .1em;
  line-height: 2
}
html[lang=en] .concept .concept-Header_Heading {
  letter-spacing: .1em
}
.concept .concept-Header_Heading-large {
  text-transform: uppercase
}
.concept .concept-Header_Heading-small {
  font-weight: 400;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  padding: 0 2em
}
html[lang=en] .concept .concept-Header_Heading-small {
  letter-spacing: .02em
}
.concept .concept-Nav {
  margin: 0 0 40px
}
.concept .concept-Nav_Inner {
  padding-right: 25px;
  padding-left: 25pX
}
.concept .concept-Nav_Item {
  -webkit-flex-basis: 25%;
  flex-basis: 25%
}
.concept .concept-Nav_Item:last-child .concept-Nav_Link {
  border-bottom: none
}
.concept .concept-Nav_Link {
  border-bottom: 1px solid #d8d8d8;
  color: #333;
  display: block;
  text-align: center;
  padding: 24px 0 40px
}
.concept .concept-Nav_Link:hover .concept-Nav_ItemLabel {
  color: #f1832c
}
.concept .concept-Nav_ItemNumber {
  display: block;
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: .1em;
  line-height: 2
}
html[lang=en] .concept .concept-Nav_ItemNumber {
  letter-spacing: .1em
}
.concept .concept-Nav_ItemLabel {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 1.71429;
  margin: 0 0 12px;
  transition: color .3s cubic-bezier(.25, .46, .45, .94)
}
html[lang=en] .concept .concept-Nav_ItemLabel {
  letter-spacing: .1em
}
.concept .concept-Nav_Svg {
  width: 22px;
  margin: 0 auto
}
.concept .concept-Nav_Svg:before {
  padding: 100% 0 0
}
.concept .concept-Detail {
  margin: 0 0 80px
}
.concept .concept-Detail_HeaderInner {
  border-top: solid 1px #f1832c;
  padding: 78px 0 56px
}
.concept .concept-Detail_HeaderHeading {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: .075em;
  line-height: 1.6;
  margin: 0 0 50px
}
html[lang=en] .concept .concept-Detail_HeaderHeading {
  letter-spacing: .1em
}
.concept .concept-Par {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333
}
html[lang=en] .concept .concept-Par {
  letter-spacing: .02em
}
.concept .concept-Gallery {
  background-color: #f8f7f1;
  font-size: 0;
  height: 113px;
  margin: 0 0 52px;
  position: relative;
  overflow: hidden
}
.concept .concept-Gallery_Inner {
  height: 100%;
  position: absolute
}
.concept .concept-Gallery_List {
  display: inline-block;
  list-style: none;
  height: 100%;
  padding: 0;
  margin: 0
}
.concept .concept-Gallery_Item {
  display: inline-block;
  height: 100%
}
.concept .concept-Gallery_Img {
  width: auto;
  max-height: 100%;
  height: 100%;
  line-height: 0
}
.concept .concept-Tag_List {
  font-size: 0
}
.concept .concept-Tag_Item {
  display: inline-block;
  padding: 10px 0 0;
  margin: 0 10px 0 0
}
.concept .concept-Tag_Link {
  color: #fff;
  display: inline-block;
  border: solid 1px #f1832c;
  background-color: #f1832c;
  border-radius: 1.6em;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  text-align: center;
  text-decoration: none;
  min-width: 140px;
  padding: .33333em 1em
}
html[lang=en] .concept .concept-Tag_Link {
  letter-spacing: .02em
}
.learning-Head_Label-btn {
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 10px;
  letter-spacing: .1em;
  color: #333;
  background-color: #f8f7f1;
  border-radius: 15px;
  padding: 8px 10px;
  text-align: center;
  display: block;
  transition-property: color, background-color;
  transition-duration: .3s;
  transition-timing-function: cubic-bezier(.25, .46, .45, .94)
}
html[lang=en] .learning-Head_Label-btn {
  letter-spacing: .02em
}
.is-active .learning-Head_Label-btn {
  background-color: #666;
  color: #fff
}
.learning-Head_Label-btn:hover {
  background-color: #666;
  color: #fff
}
.learning-Keyvisual {
  width: 100%;
  margin-top: 61px
}
.learning-Keyvisual-slide {
  width: 100%;
  overflow: hidden
}
.slide-wapper:before, .slide-wapper:after {
  display: table;
  content: '';
  line-height: 0
}
.slide-wapper:after {
  clear: both
}
.learning-Keyvisual-wrapper {
  float: left
}
.learning-Keyvisual-wrapper:before, .learning-Keyvisual-wrapper:after {
  display: table;
  content: '';
  line-height: 0
}
.learning-Keyvisual-wrapper:after {
  clear: both
}
.learning-Keyvisual-item {
  width: 300px;
  height: 169px;
  float: left
}
.learning-Keyvisual-image {
  width: 100%;
  height: auto
}
.learning-Keyvisual-texts {
  padding-right: 6.66667%;
  padding-left: 6.66667%;
  margin: 48px 0 0
}
.learning-Keyvisual-text {
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 1.71429
}
.learning-Top-content {
  width: 87%;
  margin: 79px auto 80px
}
.learning-Top-inner {
  margin-top: 0
}
.learning-Top-detail-btn-wrapper {
  margin-top: 25px;
  max-width: 140px
}
.learning-Contents {
  width: 87%;
  margin: 51px auto 77px
}
.learning-Section {
  border-top: 1px solid #f1832c;
  padding-top: 70px;
  margin-right: 0;
  margin-bottom: 81px
}
.learning-Section:last-child {
  margin-bottom: 0
}
.learning-Section-detail {
  float: none;
  width: auto
}
.learning-Section-figure {
  margin: 0 0 33px
}

.learning-Section-figure img {	/* 20200824 追加*/
  width:100%;
}

.learning-Figure-image {
  width: 100%
}
.learning-Header_Inner {
  padding-top: 46px;
  padding-right: 25px;
  padding-left: 25px
}
.learning-Header_Title {
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: .075em;
  line-height: 1.6;
  margin-bottom: 48px
}
html[lang=en] .learning-Header_Title {
  letter-spacing: .1em
}
.learning-Header_Texts {
  max-width: 760px
}
.learning-Header_Text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 0 0 1.83333em
}
html[lang=en] .learning-Header_Text {
  letter-spacing: .02em
}
.learning-Header_Text:last-child {
  margin: 0
}
.learning-Content_Inner {
  padding-top: 74px;
  padding-right: 25px;
  padding-left: 25px;
  padding-bottom: 44px
}
.learning-Content_Section {
  border-top: 1px solid #f1832c;
  padding: 74px 0 0
}
.learning-ProgramHeader + .learning-ProgramHeader {
  padding: 38px 0 0
}
.learning-ProgramHeader + .learning-Programs {
  padding: 26px 0 0
}
.learning-ProgramHeader_Heading {
  color: #333;
  font-weight: 600;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: .09375em;
  line-height: 1.625;
  margin: 0 0 22px
}
html[lang=en] .learning-ProgramHeader_Heading {
  letter-spacing: .02em
}
.learning-ProgramHeader_Text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333
}
html[lang=en] .learning-ProgramHeader_Text {
  letter-spacing: .02em
}
.learning-ProgramHeader_Text + .learning-ProgramHeader_Text {
  margin: 1.83333em 0 0
}
.learning-ProgramHeader_Text a, .learning-ProgramHeader_Text .learning-Program_Link {
  border-bottom: 1px dotted #333;
  color: #333;
  transition: .1s color cubic-bezier(.25, .46, .45, .94), .1s border-bottom-color cubic-bezier(.25, .46, .45, .94)
}
.learning-ProgramHeader_Text a:hover, .learning-ProgramHeader_Text .learning-Program_Link:hover {
  border-bottom-color: #f1832c;
  color: #f1832c
}
.learning-Programs {
  font-size: 0
}
.learning-Programs + .learning-ProgramHeader {
  padding: 50px 0 0
}
.learning-Program {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  margin: 0 0 50px
}
.learning-Program:last-child {
  margin: 0
}
.learning-Program-photo {
  margin: 0 0 26px
}
.learning-Program_Heading {
  color: #333;
  font-weight: 600;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: .09375em;
  line-height: 1.625
}
html[lang=en] .learning-Program_Heading {
  letter-spacing: .1em
}
.learning-Program_Heading + .learning-Program_Figure {
  padding: 24px 0 0
}
.learning-Program_Heading + .learning-Program_Texts {
  padding: 22px 0 0
}
.learning-Program_Figure + .learning-Program_Texts {
  padding: 26px 0 0
}
.learning-Program_Img {
  max-width: 100%;
  width: 100%;
  height: auto;
  line-height: 0;
}

.learning-Program_Img + .learning-Program_Caption {
  padding: 10px 0 0 /* 20200821修正 6px 0 0*/
}
.learning-Program_Caption {
  color: #666; /* 20200821修正 #888*/
  font-size: 10px; /* 20200821修正 12px*/
  font-size: 1.0rem; /* 20200821修正 1.2rem*/
  letter-spacing: .05em; /* 20200821修正 .125em*/
  line-height: 1.5 /* 20200821修正 1.83333*/
}
html[lang=en] .learning-Program_Caption {
  letter-spacing: .02em
}
.learning-Program_Item, .learning-Program_Text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333
}


html[lang=en] .learning-Program_Item, html[lang=en] .learning-Program_Text {
  letter-spacing: .02em
}
.learning-Program_Item a, .learning-Program_Item .learning-Program_Link, .learning-Program_Texts a, .learning-Program_Text .learning-Program_Link, .learning-Header_Inner .learning-Middle_Section .learning-Middle_Texts a {
  border-bottom: 1px dotted #333;
  color: #333;
  transition: .1s color cubic-bezier(.25, .46, .45, .94), .1s border-bottom-color cubic-bezier(.25, .46, .45, .94)
}
.learning-Program_Item a:hover, .learning-Program_Item .learning-Program_Link:hover, .learning-Program_Texts a:hover, .learning-Program_Text .learning-Program_Link:hover, .learning-Header_Inner .learning-Middle_Section .learning-Middle_Texts a:hover {
  border-bottom-color: #f1832c;
  color: #f1832c
}
.learning-Program_Item {
  text-indent: -1em;
  padding: 0 0 0 1em
}
.learning-Program_Item:before {
  content: '・'
}
.learning-Content_Section-title {
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: .075em;
  line-height: 1.6;
  margin: 0 0 40px
}
html[lang=en] .learning-Content_Section-title {
  letter-spacing: .1em
}
.learning-Content_Section-text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  height:5.5em;	/*20200825追加*/
  overflow: hidden;	/*20200825追加*/
}
html[lang=en] .learning-Content_Section-text {
  letter-spacing: .02em
}
.learning-Content_Section-title-sub {
  font-weight: 600;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: .09375em;
  line-height: 1.625;
  margin-bottom: 2px
}
html[lang=en] .learning-Content_Section-title-sub {
  letter-spacing: .1em
}
.card-WhatsOn_More {
  position: absolute;
  top: -10px;
  right: 0
}
.learning-Content_Card {
  margin: 57px 0 0;
  position: relative
}
.learning-Content_Card:first-child {
  margin: 0
}
.learning-Content_Card:hover .learning-Content_Card-title {
  color: #f1832c
}
.learning-Content_Card:hover .text {
  border-bottom-color: #f1832c
}
.learning-Content_Card .label {
  margin: 20px 0 0
}
.learning-Content_Card-inner {
  background-color: #f8f7f1
}
.learning-Content_Label {
  margin: 30px 0 0
}
.learning-Content_Card-image {
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: none;
  padding-top: 56.25%
}
.learning-Content_Card-lead {
  color: #888;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 8px 0 0
}
html[lang=en] .learning-Content_Card-lead {
  letter-spacing: .02em
}
.learning-Content_Card-title {
  color: #333;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: .09375em;
  line-height: 1.625;
  padding: 2px;
  margin: 10px 0 0
}
html[lang=en] .learning-Content_Card-title {
  letter-spacing: .1em
}
.learning-Content_Card-title .text {
  border-bottom: 1px dotted #333
}
.learning-Content_Card-time {
  color: #888;
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 8px 0 0
}
html[lang=en] .learning-Content_Card-time {
  letter-spacing: .02em
}
.learning-Content_Card-description {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  max-height: 5.5em;
  margin: 20px 0 0;
  overflow: hidden
}
html[lang=en] .learning-Content_Card-description {
  letter-spacing: .02em
}
.learning-Content_ellipsis {
  color: #f1832c;
  font-size: 12px;
  font-size: 1.2rem;
  margin: 5px 0 0
}
.learning-Content_Section-openEstimate {
  border-top: 1px solid #f1832c;
  padding: 74px 0 0;
  margin: 74px 0 0
}
.learning-Content_SectionInner {
  position: relative
}
.support {
  color: #333
}
.support .support-Intro_Inner {
  padding: 12px 0 74px
}
.support .support-Intro_Header {
  margin: 0 0 62px
}
.support .support-Intro_Heading {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: .1em;
  line-height: 2;
  margin: 0 0 20px
}
html[lang=en] .support .support-Intro_Heading {
  letter-spacing: .1em
}
.support .support-Intro_Heading-large {
  text-transform: uppercase
}
.support .support-Nav_Outer {
  max-width: 340px
}
.support .support-Nav {
  display: -webkit-flex;
  display: flex
}
.support .support-Nav_Inner {
  -webkit-flex-basis: 50%;
  flex-basis: 50%;
  -webkit-flex-grow: 1;
  flex-grow: 1;
  -webkit-order: 0;
  order: 0
}
.support .support-Nav_List {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -10px 0 0
}
.support .support-Nav_Item + .support-Nav_Item .support-Nav_ItemInner {
  padding: 10px 0 0 10px
}
.support .support-Nav_Item:nth-child(odd) .support-Nav_ItemInner {
  padding: 10px 0 0
}
.support .support-Nav_Item:first-child .support-Nav_ItemInner {
  padding: 10px 0 0
}
.support .support-Nav_Link {
  display: inline-block;
  background-color: #f8f7f1;
  border-radius: 15px;
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .1em;
  text-align: center;
  width: 100%;
  min-width: 140px;
  padding: 8px 10px
}
html[lang=en] .support .support-Nav_Link {
  letter-spacing: .02em
}
.support .support-Nav_Link.is-active {
  background-color: #666;
  color: #fff
}
.support .support-Par {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 1.71429;
  margin: 0 0 1em
}
html[lang=en] .support .support-Par {
  letter-spacing: .1em
}
.support .support-Par:last-child {
  margin: 0
}
.support .support-Contents .support-Details {
  border-top: solid 1px #f1832c
}
.support .support-Detail {
  border-bottom: solid 1px #f1832c;
  padding: 78px 0 80px
}
.support .support-Detail:last-child {
  border-bottom: none
}
.support .support-Detail_Inner {
  height: 100%;
  padding: 0 0 60px;
  position: relative
}
.support .support-Detail_Header {
  margin: 0 0 34px
}
.support .support-Detail_HeaderHeading {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: .075em;
  line-height: 1.6
}
html[lang=en] .support .support-Detail_HeaderHeading {
  letter-spacing: .1em
}
.support .support-Detail_Figure {
  margin: 0 0 26px
}
.support .support-Detail_Img {
  max-width: 100%;
  width: 100%;
  height: auto;
  line-height: 0
}
.support .support-Detail_Par {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333
}
html[lang=en] .support .support-Detail_Par {
  letter-spacing: .02em
}
.support .support-Detail_Link {
  color: #333;
  display: inline-block;
  background-color: #f8f7f1;
  border-radius: 1.6em;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  text-align: center;
  text-decoration: none;
  min-width: 140px;
  padding: .41667em 1em;
  position: absolute;
  bottom: 0
}
html[lang=en] .support .support-Detail_Link {
  letter-spacing: .02em
}
.tomonokai .sw-Calendar {
  display: none
}
.tomonokai-Container {
  padding-top: 40px;
  padding-right: 25px;
  padding-left: 25px;
  padding-bottom: 0
}
.tomonokai-Introduction {
  border-bottom: 1px solid #f1832c;
  padding: 0 0 74px
}
.tomonokai-Introduction .tomonokai-Heading {
  margin-top: 50px
}
.tomonokai-Introduction .tomonokai-Text {
  margin-top: 30px
}
.tomonokai-Introduction_Image .image {
  width: 100%;
  height: auto
}
.tomonokai-Heading {
  font-size: 20px;
  font-size: 2rem;
  font-weight: 400;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
.tomonokai-Text {
  font-size: 14px;
  font-size: 1.4rem;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
.tomonokai-Heading_Sub {
  font-size: 16px;
  font-size: 1.6rem
}
.tomonokai-Advantages {
  margin-top: 65px;
  padding-bottom: 75px;
  border-bottom: 1px solid #f1832c;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
.tomonokai-Advantages_Item {
  margin-top: 35px
}
.tomonokai-Advantages_head {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}
.tomonokai-Advantages_head .num {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  font-size: 20px;
  font-size: 2rem;
  color: #fff;
  min-width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: #f1832c
}
.tomonokai-Advantages_head .text {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  color: #333;
  line-height: 1.625;
  margin-left: 20px
}
.tomonokai-Advantages_Image {
  margin-top: 20px
}
.tomonokai-Advantages_Image .image {
  width: 100%;
  height: auto
}
.tomonokai-Advantages_Text {
  font-size: 14px;
  font-size: 1.4rem;
  color: #333;
  margin-top: 15px
}
.tomonokai-Advantages_Others {
  margin-top: 55px
}
.tomonokai-Advantages_Notes {
  margin-top: 40px
}
.tomonokai-Advantages_Note {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  line-height: 1.83
}
.tomonokai-Fee {
  border-bottom: 1px solid #f1832c
}
.tomonokai-Fee_Inner {
  padding: 76px 0 78px
}
.tomonokai-Fee_Head {
  color: #333;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 1.625;
  margin: 0 0 34px
}
.tomonokai-Fee_ImgContainer {
  margin: 0 0 36px
}
.tomonokai-Fee_Img {
  max-width: 100%;
  width: 100%;
  line-height: 0
}
.tomonokai-Fee_Table {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0
}
.tomonokai-Fee_Text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 0 0 2.1em
}
html[lang=en] .tomonokai-Fee_Text {
  letter-spacing: .02em
}
.tomonokai-Fee_Text:last-child {
  margin: 0
}
.tomonokai-Apply {
  border-bottom: 1px solid #f1832c
}
.tomonokai-Apply_Inner {
  padding: 76px 0 68px
}
.tomonokai-Apply_Head {
  color: #333;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 1.625;
  margin: 0 0 50px
}
.tomonokai-Apply_Content {
  margin: 0 0 54px
}
.tomonokai-Apply_Content:last-child {
  margin: 0
}
.tomonokai-Apply_ContentHead {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 0 0 2.1em
}
html[lang=en] .tomonokai-Apply_ContentHead {
  letter-spacing: .02em
}
.tomonokai-Apply_Text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  line-height: 1.83333;
  margin: 0 0 2.1em
}
html[lang=en] .tomonokai-Apply_Text {
  letter-spacing: .02em
}
.tomonokai-Apply_Text:last-child {
  margin: 0
}
.tomonokai-Apply_Button {
  display: inline-block;
  border: solid 1px transparent;
  border-radius: 1.65em;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .125em;
  text-align: center;
  text-decoration: none;
  width: 200px;
  padding: .375em 1em;
  margin: 4px 0;
  touch-action: manipulation;
  white-space: nowrap;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  transition-property: color, background-color;
  transition-duration: .3s;
  transition-timing-function: cubic-bezier(.25, .46, .45, .94)
}
html[lang=en] .tomonokai-Apply_Button {
  letter-spacing: .02em
}
.tomonokai-Apply_Button-primary {
  background-color: #f1832c;
  border: solid 1px #f1832c;
  color: #fff
}
.tomonokai-Apply_Button-primary:hover {
  background-color: #fff;
  border: solid 1px #f1832c;
  color: #f1832c
}
.tomonokai-Apply_Button-secondary {
  background-color: #f8f7f1;
  border: solid 1px #f8f7f1;
  color: #333
}
.tomonokai-Apply_Button-secondary:hover {
  background-color: #666;
  border: solid 1px #666;
  color: #fff
}
.tomonokai-Usage_Head {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  color: #333
}
.tomonokai-Usage_Item {
  padding-top: 80px;
  padding-bottom: 70px;
  border-bottom: 1px solid #f1832c
}
.tomonokai-Usage_Item:last-child {
  border-bottom: none
}
.tomonokai-Usage_Item.type01 {
  -webkit-flex-direction: column;
  flex-direction: column
}
.tomonokai-Usage_Image {
  text-align: center;
  margin-top: 40px;
  padding-left: 35px;
  padding-right: 35px
}
.tomonokai-Usage_Image .img {
  width: 100%;
  height: auto
}
.tomonokai-Usage_Image .diagram {
  display: block;
  width: 100%;
  height: 40px;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  border-left: 2px solid #000
}
.tomonokai-Usage_Image .img-diagram {
  width: 56.69%
}
.tomonokai-Usage_Text {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  line-height: 1.83;
  margin-top: 30px;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .tomonokai-Usage_Text {
  letter-spacing: .02em
}
.tomonokai-Usage_Note {
  margin-top: 25px;
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  line-height: 1.83
}
.tomonokai-Usage_Notice {
  font-weight: 500;
  margin-top: 25px;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  list-style: 1.625
}
.tomonokai-Usage_Notice.attention {
  color: #f1832c
}
.tomonokai-Usage_Steps {
  position: relative;
  padding-top: 25px
}
.tomonokai-Usage_Steps:before {
  content: '';
  display: block;
  position: absolute;
  left: 50%;
  top: 40px;
  width: 0;
  height: calc(100% - 40px);
  border-right: 1px dashed #f1832c;
  z-index: -1
}
.tomonokai-Usage_Step {
  padding-top: 15px;
  text-align: center
}
.tomonokai-Usage_Step .num {
  font-size: 12px;
  font-size: 1.2rem;
  display: inline-block;
  text-align: center;
  min-width: 80px;
  color: #f1832c;
  padding: 2px 0;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  background: #fff;
  border-radius: 20px;
  border-top: 1px solid #f1832c;
  border-right: 1px solid #f1832c;
  border-bottom: 1px solid #f1832c;
  border-left: 1px solid #f1832c
}
html[lang=en] .tomonokai-Usage_Step .num {
  letter-spacing: .02em
}
.tomonokai-Usage_Step .image {
  margin-top: 20px;
  padding-left: 35px;
  padding-right: 35px
}
.tomonokai-Usage_Step .image .img {
  width: 100%;
  height: auto
}
.tomonokai-Usage_Step .text {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  background: #fff;
  line-height: 1.83;
  padding-top: 20px;
  padding-left: 35px;
  padding-right: 35px;
  padding-bottom: 20px;
  text-align: left
}
html[lang=en] .tomonokai-Usage_Step .text {
  letter-spacing: .02em
}
.join .sw-Calendar {
  display: none
}
.join-introduction .notice {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 40px;
  padding: 30px;
  border: 1px solid #f1832c;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  line-height: 1.7;
  color: #333
}
html[lang=en] .join-introduction .notice {
  letter-spacing: .1em
}
.join-introduction .explain {
  width: 100%;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 60px;
  line-height: 1.7;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .join-introduction .explain {
  letter-spacing: .1em
}
.join-introduction .explain .symbol {
  color: #f1832c
}
.form {
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 35px;
  box-sizing: border-box;
  padding-bottom: 80px
}
html[lang=en] .form {
  letter-spacing: .1em
}
.form .form-heading {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  color: #333
}
html[lang=en] .form .form-heading {
  letter-spacing: .1em
}
.form .form-wrapper {
  width: 100%;
  padding: 0 25px
}
.form .row {
  position: relative;
  border-bottom: 1px solid #ddd;
  padding: 20px 0 30px
}
.form .row:first-child {
  border-top: 1px solid #ddd
}
.form .head {
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
  color: #888;
  padding: 0 0 20px
}
html[lang=en] .form .head {
  letter-spacing: .1em
}
.form .head.is-required:after {
  content: '*';
  position: absolute;
  right: 10px;
  top: 5px;
  width: 10px;
  height: 10px;
  color: #f1832c;
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 1
}
.form .column {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  margin-top: 12px
}
.form .column:first-child {
  margin-top: 0
}
.form .unit {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  min-width: 0
}
.form .form-item {
  width: 100%;
  min-width: 0;
  background-color: #f8f7f2;
  border-radius: 5px;
  padding: 12px 10px;
  line-height: normal;
}
.form .form-select {
  padding-top: 7px;
  padding-right: 5px;
  padding-bottom: 7px;
  padding-left: 20px;
  background-color: #f8f7f2;
  border-radius: 25px;
  width: 220px;
  font-size: 12px;
  font-size: 1.2rem
}
html[lang=en] .form .form-select {
  letter-spacing: .02em
}
.form input:-webkit-autofill, .form select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #f8f7f2 inset
}
.form .note {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  margin-top: 8px;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  line-height: 1.4
}
html[lang=en] .form .note {
  letter-spacing: .02em
}
.form .unit-text {
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 10px;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  color: #333
}
html[lang=en] .form .unit-text {
  letter-spacing: .1em
}
.form .form-error-messages {
  margin-top: 5px
}
.form .form-error-messages span {
  font-size: 12px;
  font-size: 1.2rem;
  color: #f00
}
html[lang=en] .form .form-error-messages span {
  letter-spacing: .02em
}
.form .symbol {
  padding: 10px 5px 0
}
.form .column.column-1 .unit {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  margin-top: 10px
}
.form .column.column-1 .unit:first-child {
  margin-top: 0
}
.form .column.column-2 .unit {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 49%;
  margin-left: 2%
}
.form .column.column-2 .unit:first-child {
  margin-left: 0
}
.form .column.column-post .unit {
  width: 85px
}
.form .column.column-select {
  -webkit-flex-direction: column;
  flex-direction: column
}
.form .column.column-select .unit {
  width: 100%;
  position: relative
}
.form .column.column-select .unit:before {
  content: '';
  display: block;
  position: absolute;
  left: 190px;
  top: 7px;
  width: 10px;
  height: 10px;
  pointer-events: none;
  border-right: 1px solid #888;
  border-bottom: 1px solid #888;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}
.form .column.column-radio {
  padding: 10px 0
}
.form .column.column-radio .label-wrap {
  min-width: 45px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  margin-left: 20px
}
.form .column.column-radio .label-wrap:first-child {
  margin-left: 0
}
.form .column.column-radio .form-item {
  position: absolute;
  opacity: 0;
  width: auto
}
.form .column.column-radio .form-item:checked + .label:before {
  background-color: #f1832c;
  box-shadow: inset 0 0 0 4px #f8f7f2
}
.form .column.column-radio .label {
  position: relative;
  font-size: 14px;
  font-size: 1.4rem
}
html[lang=en] .form .column.column-radio .label {
  letter-spacing: .1em
}
.form .column.column-radio .label:before {
  content: '';
  background: #f8f7f2;
  border-radius: 100%;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 10px;
  vertical-align: top;
  cursor: pointer;
  text-align: center
}
.form .send-btn {
  margin-top: 60px;
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  background-color: #f1832c;
  width: 100%;
  height: 60px;
  border-radius: 10px;
  color: #fff;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .form .send-btn {
  letter-spacing: .02em
}
.form .send-btn .text {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem
}
html[lang=en] .form .send-btn .text {
  letter-spacing: .02em
}
.price .comission, .price .annual {
  display: none
}
.is-price .price {
  display: -webkit-flex;
  display: flex;
  margin-top: 5px
}
.is-price .price .comission, .is-price .price .annual {
  display: block;
  font-size: 12px;
  font-size: 1.2rem
}
html[lang=en] .is-price .price .comission, html[lang=en] .is-price .price .annual {
  letter-spacing: .02em
}
.is-price .price .comission {
  margin-right: 10px
}
.link {
  margin-top: 15px
}
.link .anchor {
  color: #888;
  font-size: 14px;
  font-size: 1.4rem;
  border-bottom-style: dotted;
  border-bottom-color: #888;
  border-bottom-width: 1px;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .link .anchor {
  letter-spacing: .1em
}
.form-family-wrap {
  display: none;
  width: 100%;
  padding: 0 25px;
  margin-top: 35px
}
.form-family-wrap .family-member {
  display: none;
  margin-top: 30px
}
.form-family-wrap .family-heading {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 400;
  color: #333;
  border-bottom: 1px solid #ddd;
  padding-bottom: 15px
}
html[lang=en] .form-family-wrap .family-heading {
  letter-spacing: .1em
}
.form-error-messages {
  width: 100%
}
.form-error-messages .required-error, .form-error-messages .type-error, .form-error-messages .different-error {
  display: none;
  color: #f00
}
.is-error-required .form-error-messages .required-error {
  display: block
}
.is-error-type .form-error-messages .type-error {
  display: block
}
.is-error-different .form-error-messages .different-error {
  display: block
}
.send-btn {
  opacity: .4;
  pointer-events: none;
  background-color: #f1832c;
  transition-property: background, color;
  transition-duration: .4s;
  transition-timing-function: cubic-bezier(.39, .575, .565, 1)
}
.send-btn.is-enable-send {
  opacity: 1;
  pointer-events: auto
}
.sw-Accordion-member {
  width: 100%
}
.sw-Accordion-member .sw-Accordion_Title {
  font-size: 12px;
  font-size: 1.2rem
}
html[lang=en] .sw-Accordion-member .sw-Accordion_Title {
  letter-spacing: .02em
}
.sw-Accordion-member .sw-Accordion_Text {
  font-size: 11px;
  font-size: 1.1rem;
  padding-right: 0
}
html[lang=en] .sw-Accordion-member .sw-Accordion_Text {
  letter-spacing: .02em
}
.br-pc {
  display: none
}
.tomonokai-Wrap {
  padding-top: 40px;
  padding-bottom: 40px
}
.tomonokai-Member {
  letter-spacing: 1px;
  letter-spacing: .1rem;
  padding: 30px 0;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd
}
html[lang=en] .tomonokai-Member {
  letter-spacing: .1em
}
.tomonokai-Member_Name {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  color: #333
}
html[lang=en] .tomonokai-Member_Name {
  letter-spacing: .1em
}
.tomonokai-Member_Name .name {
  padding-left: 10px;
  padding-left: 1rem
}
.tomonokai-Member_Expiration {
  margin-top: 25px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}
.tomonokai-Member_Expiration .title {
  color: #888;
  font-size: 12px;
  font-size: 1.2rem
}
html[lang=en] .tomonokai-Member_Expiration .title {
  letter-spacing: .02em
}
.tomonokai-Member_Expiration .date {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  padding-left: 10px;
  padding-left: 1rem
}
html[lang=en] .tomonokai-Member_Expiration .date {
  letter-spacing: .02em
}
.tomonokai-Member_Text {
  margin-top: 25px;
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.83
}
html[lang=en] .tomonokai-Member_Text {
  letter-spacing: .02em
}
.tomonokai-Member_Text .note {
  color: #f1832c
}
.tomonokai-Member_Login {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin-top: 25px
}
.tomonokai-Member_Login-item {
  width: 45%
}
.tomonokai-Member_Login-item.logout {
  position: relative
}
.tomonokai-Member_Login-item.logout:before {
  content: '';
  display: block;
  position: absolute;
  left: -10%;
  top: 0;
  width: 1px;
  height: 100%;
  background: #ddd
}
.tomonokai-Member_Login-item.logout .tomonokai-Member_Login-anchor {
  background: #333;
  color: #fff
}
.tomonokai-Member_Login-anchor {
  width: 100%;
  display: block;
  font-weight: 300;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: .1em;
  color: #333;
  background-color: #f8f7f1;
  border-radius: 15px;
  padding: 8px 10px;
  text-align: center
}
html[lang=en] .tomonokai-Member_Login-anchor {
  letter-spacing: .02em
}
.tomonokai-Flow {
  padding: 40px 0
}
.tomonokai-Flow_List {
  position: relative;
  margin-top: 35px
}
.tomonokai-Flow_List:before, .tomonokai-Flow_List:after {
  content: '';
  display: block;
  position: absolute
}
.tomonokai-Flow_List:before {
  left: 25px;
  top: 30px;
  width: 1px;
  height: calc(100% - 80px);
  background-color: #f1832c
}
.tomonokai-Flow_List:after {
  left: 15px;
  bottom: 53px;
  width: 20px;
  height: 20px;
  border-top: 1px solid #f1832c;
  border-right: 1px solid #f1832c;
  -webkit-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg)
}
.tomonokai-Flow_List .tomonokai-Step {
  padding: 0
}
.tomonokai-Flow_Item {
  font-weight: 600;
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  padding: 20px 40px;
  margin-top: 10px;
  background-color: #f8f7f1;
  text-align: center
}
html[lang=en] .tomonokai-Flow_Item {
  letter-spacing: .1em
}
.tomonokai-Flow_Item:first-child {
  margin-top: 0
}
.tomonokai-Flow_Text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  margin-top: 10px
}
html[lang=en] .tomonokai-Flow_Text {
  letter-spacing: .02em
}
.tomonokai-Step {
  background-color: #f8f7f1;
  padding: 20px 40px
}
.tomonokai-Step_Elem {
  font-weight: 600;
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  position: relative;
  text-align: center;
  line-height: 1.714;
  padding-bottom: 45px
}
html[lang=en] .tomonokai-Step_Elem {
  letter-spacing: .1em
}
.tomonokai-Step_Elem:last-child {
  padding-bottom: 10px
}
.tomonokai-Step_Elem .icon-arrow01 {
  position: absolute;
  left: 50%;
  bottom: 15px;
  -webkit-transform: translate3d(-50%, 0, 0);
  transform: translate3d(-50%, 0, 0);
  width: 24px;
  height: 14px
}
.tomonokai-Step_Elem.done {
  color: #ccc
}
.tomonokai-Step_Elem.current {
  color: #f1832c
}
.tomonokai-Step_Text {
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.83;
  margin-top: 10px
}
html[lang=en] .tomonokai-Step_Text {
  letter-spacing: .02em
}
.tomonokai-Parts_Buttons .button-proceed {
  max-width: 360px;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto
}
.tomonokai-Notice_Text {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  color: #333;
  line-height: 1.714;
  padding: 30px 25px;
  border: 2px solid #f1832c;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .tomonokai-Notice_Text {
  letter-spacing: .1em
}
.tomonokai-Area_Title {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  text-align: center
}
html[lang=en] .tomonokai-Area_Title {
  letter-spacing: .02em
}
.tomonokai-Area_Title .anchor {
  color: #f1832c;
  border-bottom: 1px dotted #f1832c
}
.tomonokai-Area_Text {
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  margin-top: 7px;
  text-align: center
}
html[lang=en] .tomonokai-Area_Text {
  letter-spacing: .1em
}
.tomonokai-Area-Wrap .button-proceed {
  max-width: 360px;
  margin-top: 20px;
  margin-right: auto;
  margin-left: auto
}
.tomonokai-Point {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  border: 1px solid #888;
  text-align: center
}
.tomonokai-Point .text, .tomonokai-Point .num {
  font-size: 14px;
  font-size: 1.4rem;
  height: 60px;
  line-height: 60px;
  width: 50%
}
html[lang=en] .tomonokai-Point .text, html[lang=en] .tomonokai-Point .num {
  letter-spacing: .1em
}
.tomonokai-Point .text {
  background-color: #888;
  color: #fff
}
.tomonokai-Point .num {
  font-size: 20px;
  font-size: 2rem;
  font-weight: 300;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .tomonokai-Point .num {
  letter-spacing: .1em
}
.tomonokai-Point-Wrap .tomonokai-Point {
  max-width: 360px;
  margin-left: auto;
  margin-right: auto
}
.tomonokai-Box_Item {
  padding: 35px 25px;
  border: 2px solid #f1832c;
  margin-top: 20px
}
.tomonokai-Box_Item:first-child {
  margin-top: 0
}
.tomonokai-Box_Item .button-proceed {
  max-width: 360px;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto
}
.tomonokai-Box_Title {
  font-weight: 600;
  font-size: 16px;
  font-size: 1.6rem;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  text-align: center;
  line-height: 1.625
}
html[lang=en] .tomonokai-Box_Title {
  letter-spacing: .1em
}
.tomonokai-Box_Title .text {
  color: #888;
  padding-left: 5px;
  padding-left: .5rem
}
.tomonokai-Box_Text {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  margin-top: 18px;
  line-height: 1.714
}
html[lang=en] .tomonokai-Box_Text {
  letter-spacing: .02em
}
.tomonokai-Caution {
  padding: 30px 25px;
  border: 2px solid #f1832c
}
.tomonokai-Caution_Title {
  font-weight: 600;
  position: relative;
  font-size: 16px;
  font-size: 1.6rem;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  line-height: 1.625;
  padding-left: 60px
}
html[lang=en] .tomonokai-Caution_Title {
  letter-spacing: .1em
}
.tomonokai-Caution_Title:before {
  font-weight: 400;
  content: '!';
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  position: absolute;
  left: 0;
  top: 0;
  width: 40px;
  height: 40px;
  background: #000;
  color: #fff;
  font-size: 20px;
  font-size: 2rem
}
.tomonokai-Caution_Text {
  color: #333;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 25px;
  line-height: 1.714;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .tomonokai-Caution_Text {
  letter-spacing: .1em
}
.tomonokai-Send .button-proceed {
  max-width: 360px;
  margin-left: auto;
  margin-right: auto
}
.tomonokai-Send_Texts {
  max-width: 360px;
  margin-left: auto;
  margin-right: auto
}
.tomonokai-Send_Text {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  letter-spacing: 1px;
  letter-spacing: .1rem;
  margin-top: 40px
}
html[lang=en] .tomonokai-Send_Text {
  letter-spacing: .02em
}
.tomonokai-Send_Definition {
  margin-top: 25px
}
.tomonokai-Send_Definition .title, .tomonokai-Send_Definition .text {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 1px;
  letter-spacing: .1rem
}
html[lang=en] .tomonokai-Send_Definition .title, html[lang=en] .tomonokai-Send_Definition .text {
  letter-spacing: .02em
}
.tomonokai-Send_Definition .title {
  color: #888
}
.tomonokai-Send_Definition .text {
  color: #333
}

.tableStyle { width: 100%;margin-top: 10px;border-collapse: collapse; }
.tableStyle th,
.tableStyle td {
	padding: 10px 10px;
	border-top: #dddddd solid 1px;
	border-bottom: #dddddd solid 1px;
	border-left: #dddddd dotted 1px;
	_border-left: expression((this.parentNode.firstChild ==this)?'none':'#dddddd dotted 1px');
	line-height: 1.67;
	vertical-align: middle;
	font-size: 12px;
	font-size: 1.2rem;
}
.tableStyle th.first,
.tableStyle td.first,
.tableStyle th:first-child,
.tableStyle td:first-child { border-left: none;	}
.tableStyle th {background: #f8f7f2; }

.PC { display: block; }
.SP { display: none; }

.tomonokai-Container {
	padding-top: 40px;
	padding-bottom: 70px;
	padding-right: 25px;
	padding-left: 25px;
}
#tomonokai .tomonokai-Container h4,
.tomonokai-Container h5 {
	color: #333;
    letter-spacing: .125em;
    line-height: 1.83333;
}
.tomonokai-Container h4 {
    font-size: 16px;
    font-size: 1.6rem;
	font-weight: 300;
}
#tomonokai .tomonokai-Container h4,
.tomonokai-Container h5 {
    font-size: 12px;
    font-size: 1.2rem;
	font-weight: 600;
}
.tomonokai-Item {
    padding-top: 70px;
    border-top: 1px solid #f1832c;
	font-size: 1.2rem;
	color: #333;
    font-weight: 300;
    letter-spacing: .125em;
    line-height: 1.83333;
}
.tomonokai-text p {
	font-size:1.4rem;
	letter-spacing: .1rem;
    margin: 0 0 2.1em;
}
.form .send-btn a { color: #fff; }
.form .send-btn a:hover,
.form .send-btn:hover > a { color: #f1832c; }
.button-proceed { max-width: 360px; }
.button-proceed .text { width: 100%; }
.button-proceed a { 
	color: #fff;
	display: flex;
	box-sizing: border-box;
    padding: 10px 0;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center; 
}
.button-proceed:hover {
    border: 1px solid #f1832c;
    background-color: #fff;
    color: #f1832c
 }
.button-proceed a:hover,
.button-proceed:hover > a { color: #f1832c; }
.button-proceed-back { background: #888; }
.button-proceed-back:hover { background: #fff!important;color: #888!important;border-color: #888!important; }
.button-proceed-back a:hover,
.button-proceed-back:hover > a { color: #888!important; }

.tomonokai-Member { margin: 40px 25px 0 25px; }

#login .type-error,#kubun .type-error,#password .type-error:last-child { margin-bottom: 10px; }

#cnfr .tomonokai-Container,
#cnfr .form .head { padding-bottom: 0; }
#cnfr .form .column:first-child { margin-top: 10px; }

#edit .tomonokai-Container { padding-bottom: 0; }
#edit .form .column:first-child { margin-top: 10px; }
#edit.edit_cnfr .form .column:first-child { margin-top: 0; }

#edit.edit_cnfr .form-family-wrap2 { padding: 0; }
.form-family-wrap2 { width: 100%;padding: 0 25px;margin-top: 35px; }
.form-family-wrap2 .family-heading { font-weight: 300;font-size: 14px;font-size: 1.4rem;color: #333;border-bottom: 1px solid #ddd;padding-bottom: 15px; }
.form-family-wrap2 .family-member { margin-top: 30px; }

#renew .tomonokai-Flow_List:after,
#renew .tomonokai-Flow_List:before { content: none; }

#kubun b { font-weight: bold; }
#kubun .form-item2 { position: absolute;opacity: 0;margin-left: 0;margin-bottom: 0;width: 30px;height: 30px; }
#kubun .form-item2:checked + .label2:before { background-color: #f1832c;box-shadow: inset 0 0 0 4px #f8f7f2; }
#kubun .label2:before {
    content: '';
    background: #f8f7f2;
    border-radius: 100%;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 10px;
    vertical-align: top;
    cursor: pointer;
    text-align: center;
}
#kubun .head { color: #333; }
#kubun .form-family-wrap { padding:0; }
#kubun .form-family-wrap,
#kubun .form-family-wrap .family-member { margin-top: 0; }
#kubun form .form-family-wrap .row:first-child { border-top: none; }	
#kubun form .form-family-wrap .column:first-child { justify-content: space-between; }
.kubun_cnfr form .form-family-wrap .column:first-child { justify-content: space-between; }
#kubun .form-family-wrap .family-heading { padding-top: 18px; }

#cnfr .form-family-wrap,#cnfr .form-family-wrap .family-member,
.edit .form-family-wrap,.edit .form-family-wrap .family-member,
#kubun .form-family-wrap,#kubun .form-family-wrap .family-member { display: block; }

#help b { font-weight: bold; }
#help h5 + .explain { margin-top: 35px;margin-bottom: 40px; }
#help h5 + .explain:last-child { margin-bottom: 0; }
#help .listStyle01:first-child { margin-top: 40px; }
#help .tomonokai-Container a { color: #333;border-bottom: 1px dotted #333; }

#quit h5 + .explain { margin-top: 35px;margin-bottom: 40px; }
#quit h5 + .explain:last-child { margin-bottom: 0; }

.listStyle01 li {
    padding-left: 13px;
    background: url(https://www.kanazawa21.jp/tomonokai/css/image/common/listtype-01.gif) no-repeat left 0.7em;
	font-size: 1.4rem;
}

#pictures .Container {
    padding-top: 40px;
    padding-bottom: 40px;
    padding-right: 25px;
    padding-left: 25px;
}
#pictures .Introduction {
    border-bottom: 1px solid #f1832c;
    padding: 0 0 74px;
}
#pictures .title h3 { font-size: 1.6rem;margin: 35px 0 10px 0; } 
#pictures .title p { font-size: 92.3%; }

#pictures .category h4{ margin-top: 20px;margin-bottom: 5px; }
#pictures .category ul li { font-size: 1.2rem;margin-right: 20px;margin-bottom: 5px; }

#pictures .Text { 
	font-weight: 300;
    font-size: 14px;
    font-size: 1.4rem;
    color: #333;
    letter-spacing: 1px;
    letter-spacing: .1rem;
}
#pictures .section {
    margin-top: 95px;
    letter-spacing: 1px;
    letter-spacing: .1rem;
	border-top: 1px solid #f1822c;
}
#pictures button { margin: 0 auto; }
#pictures .Items {
	padding-bottom: 35px;
}
#pictures .Items li { 
	width: 25%;
	padding: 35px 0;
    box-sizing: border-box;
}
#pictures .Items li div {
    margin: 0 auto;
	display: flex;
	justify-content: center;
    align-items: center;
    height: 300px;
	background: #f8f7f1;
}
#pictures .Items li img {
    width: auto;
    height: auto;
	max-width: 300px;
    max-height: 300px;
}

#pictures .Items li h3 {
    width: 100%;
	font-weight: 300;
    font-size: 16px;
    font-size: 1.6rem;
    color: #333;
    line-height: 1.625;
    margin-top: 15px;
	margin: 10px auto 0;
	width: 300px;
}
#pictures .Items li p {
    font-size: 12px;
    font-size: 1.2rem;
    color: #333;
    line-height: 1.625;
	margin-top: 10px;
	margin: 0 auto;
	width: 300px;
}
#pictures .tplFormArea { border: none;display: inline-block;text-align: left;margin-top: 35px; }
#pictures .form_photo { display: flex;flex-wrap: wrap; } 
#pictures .form_photo li { margin-bottom: 20px; }

#contentsHeader a.btn01 { margin-bottom: 10px; }

.project .tplColumnArea .inner .column { margin-bottom: 10px; }
.project .learning-Content_Section b { font-weight: bold; }
.project .learning-ProgramHeader img { width:100%; }

#permanent #contents #contentsMain .indexBtn { margin-bottom: 0; }
#permanent #contents #contentsMain .indexBtn:last-child { margin-bottom: 70px; }
#permanent #contents #contentsMain .indexBtn .wrap { margin: 0 auto; }
#permanent #contents #contentsMain .indexBtn.first a.wrap { border-bottom: none; }
#permanent #contents #contentsMain .indexBtn.first:last-child a.wrap { border-bottom: #eeeeee solid 1px; }

#top-info { width: 66.7%; }
.top-info { font-size: 12px;font-size: 1.2rem;color: #333;line-height: 2.08; }
.top-info h4 { font-size: 16px;font-size: 1.6rem;font-weight: 400; }
.top-info dl { display: flex; }
.top-info dt { font-weight: bold; }   
.top-info.tc dt { width: 60px; } 

.header-Util_Lang .pulldown { opacity: 1; }
.header-Util_Lang .pulldown .label { line-height: 2.08; }
.header-Util_Lang .pulldown.open .list li:first-child { margin-top: 0;padding-top: 10px; }
.header-Util_Lang .pulldown.open .list li a { border-bottom: none; }
.header-Util_Lang .pulldown.open .list li a:hover { color: #f1832c!important; }
.header-Util_Lang .pulldown .list { padding: 0 15px 10px;font-size: 1.2rem;background: #666666;border-radius: 0 0 15px 15px; }
.header-Util_Lang .pulldown .label a,.header-Util_Lang .pulldown .label a:hover { color: #f1832c!important; }
.header-Util_Lang .pulldown.on .label a, .header-Util_Lang .pulldown .active .label a { color: #ffffff !important; }

@media screen and (max-width: 1369px) and (min-width: 1200px){
	#contentsHeader ul.category { padding-right: 120px; }
	#contentsHeader .menu { padding-right: 80px; }
}
@media screen and (max-width: 1199px) and (min-width: 1024px){
	#contentsHeader ul.category { padding-right: 175px; }
}
@media screen and (max-width: 1199px) and (min-width: 1130px){
	#contentsHeader .menu { padding-right: 120px; }
}
@media screen and (max-width: 1129px) and (min-width: 1024px){
	#contentsHeader .menu { padding-right: 175px; }
}
@media screen and (min-width: 1024px) {
	.tomonokai-Member { margin: 40px 60px 0 60px; }
	
	#pictures .Container { padding-left: 60px;padding-right: 60px; }
	
	.pulldown.PC { z-index: 100;position: fixed;right: 122px;top: 39px; }fheader-
}
@media screen and (max-width:1400px) and (min-width:1240px) { #pictures .Items li { width: 31.3%; } }
@media screen and (max-width:1239px) and (min-width:768px) { #pictures .Items li { width: 50%; } }

@media screen and (min-width:768px) { 
	.tomonokai-text { width: 760px;margin: 0 auto; }
	.btns { display: flex; justify-content: space-between; padding: 0;margin-top: 60px; }
	.btns .button-proceed { width: 360px; }
	
	#constitution .tomonokai-Container,
	#help .tomonokai-Container,
	.quit2 .tomonokai-Container { padding-top: 60px; }
	
	#quit .tomonokai-Box_Item { display: flex;flex-wrap: wrap;align-content: space-between; }
	
	#kubun form .form-family-wrap .kubun-body { width: 70%!important; }
	#kubun form .form-family-wrap .kubun-unit {margin-top: 8px; }
	#kubun .form-family-wrap .row:first-child { padding-bottom: 14px;padding-top: 10px; }
	#kubun .form-family-wrap .family-heading { padding-bottom: 14px; }
	#kubun .tomonokai-Step { margin-top: 60px; }
	.kubun_cnfr .form .column { margin-top: 10px!important; }
	.kubun_cnfr .form-family-wrap { padding:0 25px!important; }
	
	.edit_cnfr .row { max-width: 810px;margin-right: auto;margin-left: auto;}
	.edit_cnfr .form .form-wrapper { padding: 0; }
	
	.form-family-wrap2 { max-width: 810px;margin-top: 50px;margin-right: auto;margin-left: auto; }
	
	#email .form .column:first-child { margin-top: 8px; }
	
	#pictures .category ul { display: flex;flex-wrap: wrap; }
	#pictures .category ul li { margin-right: 20px; }
	#pictures .category ul li:last-child { margin-right: 0; }
	
	#pictures .Introduction { display: -webkit-flex; display: flex; }
	#pictures .Introduction .Text { line-height: 1.714; }
	#pictures .Items {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	#pictures .Items li { position: relative;padding-bottom: 60px; }
	#pictures .Items li p { position: absolute;min-height: 38px;top: auto;left: 0;right: 0;bottom: 0;margin:auto; }

	#pictures .form_photo li { margin-right: 10px; }
	#pictures .form_photo li:last-child { margin-right: 0; }
	
	.project .tplColumnArea .inner { display: flex;justify-content: space-between; }
	.project .tplColumnArea .inner .column { width: 48%; }
	.project .learning-ProgramHeader img { width:50%; }
}

@media screen and (min-width:767px) { 
	.qa .tomonokai-Item h4 { margin-bottom: 40px; }
}

@media screen and (max-width:767px) { 
	.button-proceed-back { margin: 20px auto!important; }
	
	.tomonokai-Container .form .form-wrapper,
	.tomonokai-Container .form-family-wrap,
	.tomonokai-Container .form-family-wrap2 { padding-left: 0;padding-right: 0; }
	
	.tomonokai-Container h4 { margin: 0 0 2.1em; }
	
	#kubun form .form-family-wrap .kubun-unit {margin-bottom: 10px; }
	.kubun_cnfr .form .column { margin-top: 0; }
	
	#quit .tomonokai-text { padding-top: 60px; }
	#stop .button-proceed:first-child { margin-top: 60px; }
	
	#pictures .Items li { width:100%; }
	#pictures .Items p { margin-top: 10px; }
	
	#pictures .form_photo { justify-content: space-between; } 
	#pictures .form_photo li { width: 50%;text-align: center; }
	
	.top-info dd {margin-left: 10px; } 
}

@media screen and (max-width:374px) { 
	#pictures .Items li img { max-width: 90%;max-height: 90%; }
	#pictures .Items li h3,#pictures .Items li p { width: 90%; }
}


.whatson_Contents {
  padding: 0 25px;
  margin: 60px auto 0
}
.whatson_Section {
  border-bottom: 1px solid #f1832c;
  padding-bottom: 70px;
  margin-bottom: 80px
}
.whatson_Section:last-child {
  border-bottom: none;
  margin-bottom: 0
}
.whatson_Section-heading {
  font-size: 20px;
  font-size: 2rem;
  font-weight: 400;
  color: #333;
  letter-spacing: .1em;
  margin-bottom: 50px
}
.whats_Section-heading-sub {
  position: relative;
  display: inline-block;
  color: #333;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: .1em;
  padding-left: 40px
}
.whats_Section-heading-sub:before {
  content: '';
  display: block;
  position: absolute;
  left: 10px;
  top: 50%;
  width: 20px;
  height: 1px;
  background-color: #f1832c
}
.whatson_Article {
  margin-bottom: 58px
}
.whatson_Article:last-child {
  margin-bottom: 0
}
.qa {
  color: #333
}
.qa .intro-Inner {
  padding: 12px 0 38px
}
.qa .intro-Heading {
  font-size: 20px;
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: .1em;
  line-height: 2
}
html[lang=en] .qa .intro-Heading {
  letter-spacing: .1em
}
.qa .intro-Heading-small {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: .125em;
  line-height: 1.83333;
  padding: 0 2em
}
html[lang=en] .qa .intro-Heading-small {
  letter-spacing: .02em
}
.qa .index-Outer {
  margin: 0 0 80px
}
.qa .index {
  position: -webkit-sticky;
  position: sticky;
  top: 0
}
.qa .index-Inner {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  padding: 22px 0
}
.qa .index-Link {
  color: #888;
  font-weight: 400;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 2.28571;
  transition: .1s color cubic-bezier(.25, .46, .45, .94)
}
html[lang=en] .qa .index-Link {
  letter-spacing: .1em
}
.qa .index-Link:hover {
  color: #f1832c
}
.qa .faq-Inner {
  padding: 0
}
.qa .faq-Content {
  border-top: solid 1px #f1832c
}
.qa .faq-Content_Inner {
  padding: 70px 0
}
.qa .faq-Content_Header {
  margin: 0 0 46px;
  position: relative
}
.qa .faq-Content_Heading {
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: .075em;
  line-height: 1.6;
  padding: 0 2.5em 0 0
}
html[lang=en] .qa .faq-Content_Heading {
  letter-spacing: .1em
}
.qa .faq-Arrow {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
.qa .faq-Arrow_Link {
  display: block;
  width: 40px
}
.qa .faq-Arrow_SvgContainer:before {
  padding: 100% 0 0
}
.qa .faq-List_Title:before, .qa .faq-List_Data:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0
}
.qa .faq-List_Title {
  font-weight: 600;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 1.71429;
  padding: 0 0 0 2.14286em;
  margin: 0 0 30px;
  position: relative
}
html[lang=en] .qa .faq-List_Title {
  letter-spacing: .1em
}
.qa .faq-List_Title:before {
  content: 'Q.'
}
.qa .faq-List_Data {
  font-weight: 300;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: .10714em;
  line-height: 1.71429;
  padding: 0 0 0 2.14286em;
  margin: 0 0 48px;
  position: relative
}
html[lang=en] .qa .faq-List_Data {
  letter-spacing: .1em
}
.qa .faq-List_Data:before {
  content: 'A.'
}
.qa .faq-List_Data:last-child {
  margin: 0
}
.qa .faq-List_ImgContenir {
  width: 100%;
  padding: 14px 0 8px
}
.qa .faq-List_Img {
  max-width: 100%;
  width: 100%;
  height: auto;
  line-height: 0;
  vertical-align: top
}
.qa .faq-List_Link {
  color: #333;
  border-bottom: #333 dotted 1px;
  display: inline-block;
  padding: .4em 0 .2em;
  transition: .1s color cubic-bezier(.25, .46, .45, .94), .1s border-bottom-color cubic-bezier(.25, .46, .45, .94)
}
.qa .faq-List_Link:hover {
  border-bottom-color: #f1832c;
  color: #f1832c
}

@media screen and (min-width:768px) {
  .buttons .buttons-item .anchor {
    -webkit-backface-visibility: hidden;
    transition-property: color, background-color, opacity;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  .buttons .buttons-item.register .anchor:hover {
    opacity: .7
  }
  .buttons .buttons-item.login .anchor:hover {
    background-color: #fff;
    color: #f1832c;
    border: 1px solid #f1832c
  }
  .buttons {
    max-width: 810px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 0;
    padding-right: 25px;
    padding-bottom: 80px;
    padding-left: 25px
  }
  .buttons-login {
    max-width: none;
    padding: 20px 60px
  }
  .buttons-login .inner {
    padding: 0
  }
  .button-proceed:hover {
    border: 1px solid #f1832c;
    background-color: #fff;
    color: #f1832c
  }
  .sw-Loading_Logo {
    width: 500px;
    height: 64px
  }
  .level {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    margin: -60px -20px 0
  }
  .level-item {
    position: relative;
    width: 50%;
    padding: 0 20px
  }
  .level-item:hover .title {
    color: #f1832c
  }
  .level-item:hover .text {
    border-bottom-color: #f1832c
  }
  .level-item:first-child {
    margin: 60px 0 0
  }
  .level-item .lead {
    min-height: 1.83333em
  }
  .level-item.medium {
    width: 33.33%
  }
  .st-event_List {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    margin: -30px -20px 0
  }
  .st-event_Item {
    width: 50%;
    padding: 30px 20px;
    margin: 0
  }
  .st-event_Lead {
    min-height: .125em
  }
  .header-Logo {
    max-width: none;
    width: 304px
  }
  .header-Util {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: center;
    align-items: center;
    position: absolute;
    right: 70px;
    top: 40px;
    width: 390px;
    height: 24px
  }
  html[lang=en] .header-Util {
    width: 410px
  }
  .header-Util_Item {
    display: block;
    width: 70px;
    transition-delay: 0s;
    transition-duration: .1s, .2s
  }
  html[lang=en] .header-Util_Item {
    width: 100px
  }
  .is-search-open .header-Util_Item {
    transition-duration: .1s, .4s;
    transition-delay: .1s
  }
  .header-Util_Item-link {
    width: 100%;
    font-size: 1.1rem;
    display: inline-block;
    padding: 8px 7px;
    border-radius: 24px;
    text-align: center;
    color: #888;
    background-color: #f8f7f1;
    letter-spacing: .2em;
    transition-property: color, background-color;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  html[lang=en] .header-Util_Item-link {
    letter-spacing: .02em
  }
  .header-Util_Item-link:hover {
    color: #fff;
    background-color: #666
  }
  .header-Util_Lang {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    margin-left: 29px
  }
  .header-Util_Lang-wrap {
    transition-duration: .1s, .4s;
    transition-delay: .05s
  }
  .header-Util_Lang-other {
    margin-left: 32px;
    transition-duration: .1s, .4s;
    transition-delay: .1s
  }
  .is-search-open .header-Util_Lang-other {
    transition-delay: 0s
  }
  .header-Util_Item, .header-Util_Lang-wrap, .header-Util_Lang-other {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
    transition-timing-function: cubic-bezier(.39, .575, .565, 1)
  }
  .is-search-open .header-Util_Item, .is-search-open .header-Util_Lang-wrap, .is-search-open .header-Util_Lang-other {
    -webkit-transform: scale(0);
    transform: scale(0);
    opacity: 0
  }
  .header-Util_Search {
    margin-left: 32px;
    width: 20px;
    height: 20px;
    margin-top: 0
  }
  .header-Util_Search-icon {
    position: relative;
    left: auto;
    top: auto;
    -webkit-transform: none;
    transform: none;
    display: block
  }
  .header-Util_Search-icon .icon-search {
    cursor: pointer
  }
  .is-search-open .header-Util_Search-icon .icon-search {
    display: none
  }
  .header-Util_Search-input {
    padding: 10px 40px;
    display: none
  }
  .is-search-open .header-Util_Search-input {
    display: block
  }
  .header-Util_Search-form {
    overflow: hidden;
    position: absolute;
    right: -10px;
    top: -10px;
    width: 0;
    height: 40px;
    opacity: 0;
    visibility: hidden;
    transition-property: width, opacity, visibility, background, overflow;
    transition-duration: 0s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  .is-search-open .header-Util_Search-form {
    z-index: 999;
    width: 400px;
    opacity: 1;
    visibility: visible;
    background-color: #f8f7f1;
    transition-property: width, opacity, background;
    transition-duration: .6s, .5s;
    transition-timing-function: cubic-bezier(.19, 1, .22, 1) cubic-bezier(.25, .46, .45, .94);
    transition-delay: .1s, .3s
  }
  .is-search-open .header-Util_Search-form .icon-search {
    display: block;
    position: absolute;
    left: 5px;
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0)
  }
  .header-Util_Search-line {
    position: absolute;
    left: 0;
    top: 50%;
    display: block;
    width: 100%;
    height: 2px;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    background-color: transparent
  }
  .header-Util_Search-line:before, .header-Util_Search-line:after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #888
  }
  .header-Util_Search-line:before {
    -webkit-transform: translate3d(0, 0, 0) rotate(45deg);
    transform: translate3d(0, 0, 0) rotate(45deg)
  }
  .header-Util_Search-line:after {
    -webkit-transform: translate3d(0, 0, 0) rotate(-45deg);
    transform: translate3d(0, 0, 0) rotate(-45deg)
  }
  .header-Menu {
    display: -webkit-flex;
    display: flex
  }
  .is-open .header-Menu {
    display: none
  }
  .header-Links {
    display: -webkit-flex;
    display: flex;
    border-top: none;
    margin: 0;
    position: absolute;
    top: 84px;
    left: 0;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 26px 60px 60px
  }
  .header-Links .header-Links_Wrap {
    border-top: 0;
    display: -webkit-flex;
    display: flex
  }
  .is-open .header-Links .header-Links_Wrap {
    border-top: 1px solid #f1832c;
    width: 100%;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 37px 0
  }
  .is-open .header-Links .header-Links_Wrap:first-child {
    border-top: 0
  }
  .header-Links .header-Links_Item {
    border-bottom: none;
    width: 25%;
    padding: 0
  }
  .header-Links .header-Links_Item.has-child:before {
    content: none
  }
  .header-Links .header-Links_Link {
    color: #333;
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1
  }
  .header-Links .header-Links_Link:hover {
    color: #f1832c
  }
  .header-Links .header-Links_SecondLevel {
    display: none;
    max-height: none;
    padding: 0;
    margin: 11px 0 0
  }
  .is-open .header-Links .header-Links_SecondLevel {
    display: block
  }
  .header-Links .header-Links_Item-second.category-top {
    display: none
  }
  .header-Links .header-Links_Link-child {
    padding: 6px 0 0
  }
  .header-Links .header-Links_Link-child:hover {
    color: #f1832c
  }
  .footer-Sns {
    padding: 2px 0 0 6px
  }
  .footer-Links_Link:hover {
    color: #f1832c
  }
  .footer-Copy {
    width: 100%;
    margin-top: 32px
  }
  .head-Sort_Section {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between
  }
  .head-Sort_Title {
    width: 33.69141%;
    -webkit-flex-basis: 33.69141%;
    flex-basis: 33.69141%;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    padding-right: 20px;
    margin: 0
  }
  .head-Sort_Body {
    width: 66.30859%;
    -webkit-flex-basis: 66.30859%;
    flex-basis: 66.30859%;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    max-width: none
  }
  .head-Sort_BodyInner {
    -webkit-justify-content: flex-end;
    justify-content: flex-end
  }
  .head-Sort_Genre {
    width: calc(100% - 180px);
    -webkit-flex-basis: auto;
    flex-basis: auto
  }
  .head-Sort_GenreInner {
    -webkit-justify-content: flex-end;
    justify-content: flex-end
  }
  .head-Sort_Btn:nth-child(odd) .head-Sort_BtnInner {
    padding: 10px 0 0 10px
  }
  .head-Sort_Btn:first-child .head-Sort_BtnInner {
    padding: 10px 0 0
  }
  .head-Sort_Year {
    width: 180px;
    -webkit-flex-basis: 180px;
    flex-basis: 180px;
    -webkit-flex-shrink: 0;
    flex-shrink: 0
  }
  .head-Sort_Year + .head-Sort_Genre .head-Sort_GenreInner {
    -webkit-flex-direction: row;
    flex-direction: row
  }
  .head-Sort_Label-btn {
    transition-property: color, background-color;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  .head-Sort_Label-btn:hover {
    background-color: #666;
    color: #fff
  }
  .top .main {
    padding-top: 80px
  }
  .tp-MainVisual_Graphic {
    height: 100%
  }
  .tp-MainVisual_ScrollBtn {
    display: block;
    position: absolute;
    right: 64px;
    bottom: 61px;
    z-index: 12;
    width: 10px;
    height: 50px
  }
  .tp-MainVisual_ScrollBtn:before, .tp-MainVisual_ScrollBtn:after {
    content: '';
    display: block;
    position: absolute
  }
  .tp-MainVisual_ScrollBtn:before {
    left: 50%;
    top: 0;
    width: 10px;
    height: 10px;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
    border: 1px solid #fff;
    border-radius: 50%
  }
  .is-active .tp-MainVisual_ScrollBtn:before {
    -webkit-animation: mvNavigator 7s cubic-bezier(.645, .045, .355, 1) 2s infinite both;
    animation: mvNavigator 7s cubic-bezier(.645, .045, .355, 1) 2s infinite both
  }
  .tp-MainVisual_ScrollBtn:after {
    width: 1px;
    height: 40px;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #fff
  }
  .tp-NewsTicker_Heading {
    margin-top: 2px;
    margin-right: 30px
  }
  .tp-NewsTicker_Items {
    min-height: 30px
  }
  .tp-WhatsOn {
    padding: 65px 60px 75px
  }
  .tp-WhatsOn_More {
    right: 60px
  }
  .tp-WhatsOn_Items {
    margin: 38px 0 0
  }
  .tp-News {
    display: -webkit-flex;
    display: flex;
    padding: 74px 60px 77px
  }
  .tp-News_Summary {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    width: 33.3%;
    padding-right: 50px
  }
  .tp-News_More {
    margin-top: auto;
    position: relative;
    right: auto;
    top: auto
  }
  .tp-News_Items {
    max-width: 66.7%;
    padding-left: 10px
  }
  .tp-News_Item:first-child {
    padding-top: 0
  }
  .tp-News_Item-link {
    padding: 0
  }
  .tp-News_Item-link:hover {
    color: #f1832c
  }
  .tp-Support {
    padding: 75px 60px 70px
  }
  .tp-Support_Item {
    width: 33.3%;
    padding: 0 20px
  }
  .tp-Support_Items, .tp-Support_Item + .tp-Support_Item {
    margin-top: 37px
  }
  .tp-Support_Items {
    margin-left: -20px;
    margin-right: -20px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
  }
  .tp-Support_Item + .tp-Support_Item {
    margin-top: 0
  }
  .tp-Support_Card {
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    background-color: #fff
  }
  .tp-Support_Head {
    width: 100%
  }
  .tp-Support_Head:after {
    content: '';
    display: block;
    padding-top: 56.3%
  }
  .tp-Support_Desc {
    padding: 16px 0 0;
    font-size: 1.6rem
  }
  .tp-Support_Text {
    margin-top: 10px
  }
  .tp-Concept_Inner {
    padding: 75px 60px 0
  }
  .tp-Concept_Items {
    display: -webkit-flex;
    display: flex
  }
  .tp-Concept_Link:before {
    width: 6px;
    top: 44%;
    left: 53%
  }
  .tp-Concept_Link:after {
    width: 6px;
    top: 63%;
    left: 50%
  }
  .tp-Concept_Item {
    -webkit-flex: 1;
    flex: 1;
    border-bottom: 0;
    border-right: 1px solid #d8d8d8;
    box-sizing: border-box;
    margin-bottom: 0;
    padding-bottom: 8px
  }
  .tp-Concept_Item:last-child {
    border-right: 0
  }
  .tp-Concept_Heading {
    margin-top: 12px
  }
  .tp-Concept_Break {
    display: block
  }
  .tp-Concept_images {
    width: 1600px;
    margin-top: 28px
  }
  .tp-Concept_images-Item {
    width: 400px
  }
  .exhibition-Head {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start
  }
  .exhibition-Head_Title {
    padding-right: 40px
  }
  .exhibition-Head_Sort {
    -webkit-flex: 1;
    flex: 1;
    margin-top: 0;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    max-width: none
  }
  .exhibition-Head_Sort .exhibition-Head_Sort-genre, .exhibition-Head_Sort .exhibition-Head_Sort-year {
    width: auto
  }
  .exhibition-Head_Sort .exhibition-Head_Sort-genre {
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    margin-top: -5px
  }
  .exhibition-Head_Btn {
    min-width: 140px;
    margin: 5px;
    transition-property: color, background-color;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  .exhibition-Head_Btn:first-child {
    margin-top: 5px
  }
  .exhibition-Head_Btn:hover {
    color: #fff;
    background-color: #666
  }
  .calendar-Wrapper_Dates {
    padding: 0
  }
  .calendar-Wrapper_Body .cell.date.is-current .anchor:hover:before {
    background-color: #f1832c
  }
  .calendar-Wrapper_Body .cell .anchor {
    width: 80px;
    height: 80px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
  }
  .calendar-Wrapper_Body .cell .anchor:hover:before {
    content: '';
    display: inline-block;
    position: absolute;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    top: 50%;
    left: 50%;
    margin-left: -40px;
    margin-top: -40px;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background-color: #fce5d5;
    z-index: -1
  }
  .concept .concept-Header_Inner {
    padding: 54px 0 46px
  }
  .concept .concept-Nav {
    margin: 0 0 80px
  }
  .concept .concept-Nav_List {
    display: -webkit-flex;
    display: flex
  }
  .concept .concept-Nav_Item:last-child .concept-Nav_Link {
    border-right: none
  }
  .concept .concept-Nav_Link {
    border-bottom: none;
    border-right: 1px solid #d8d8d8;
    padding: 0 0 8px
  }
  .concept .concept-Detail_HeaderInner {
    padding: 72px 0 56px
  }
  .concept .concept-Detail_HeaderHeading {
    margin: 0 0 48px
  }
  .concept .concept-Gallery {
    height: 225px
  }
  .concept .concept-Tag_Link {
    transition-property: color, background-color;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  .concept .concept-Tag_Link:hover {
    background-color: #fff;
    color: #f1832c
  }
  .learning-Head_Label-btn {
    margin-top: 0
  }
  .learning-Keyvisual {
    margin-top: 80px
  }
  .learning-Keyvisual-texts {
    padding-right: 4.6875%;
    padding-left: 4.6875%;
    margin: 68px 0 0
  }
  .learning-Keyvisual-text {
    width: 65.51724%
  }
  .learning-Top-content {
    width: 91%
  }
  .learning-Top-inner {
    margin-top: 0;
    border-top: 1px solid #f1832c
  }
  .learning-Top-inner:before, .learning-Top-inner:after {
    display: table;
    content: '';
    line-height: 0
  }
  .learning-Top-inner:after {
    clear: both
  }
  .learning-Top-detail-btn-wrapper {
    margin-top: 32px
  }
  .learning-Contents {
    width: 91%;
    margin: 75px auto 77px
  }
  .learning-Section {
    float: left;
    width: 48.3%;
    border-top: none;
    padding-top: 0;
    margin-right: 3.4%;
    margin-bottom: 0;
    margin-top: 60px
  }
  .learning-Section:before, .learning-Section:after {
    display: table;
    content: '';
    line-height: 0
  }
  .learning-Section:after {
    clear: both
  }
  .learning-Section:nth-child(even) {
    margin-right: 0
  }
  .learning-Section:last-child {
    margin-right: 0
  }
  .learning-Section-detail {
    float: right;
    width: 60%
  }
  .learning-Top-inner .learning-Section-detail {
    float: none;
    width: 100%
  }
  .learning-Section-figure {
    margin: 43px 0 19px
  }
  .learning-Content_Section {
    padding: 24px 0 0
  }
  .learning-ProgramHeader {
    padding: 50px 0 0
  }
  .learning-ProgramHeader + .learning-ProgramHeader {
    padding: 70px 0 0
  }
  .learning-Program {
    width: 50%;
    margin: 0
  }
  .learning-Program:nth-child(odd) {
    padding: 50px 30px 0 0
  }
  .learning-Program:nth-child(even) {
    padding: 50px 0 0 30px
  }
  .learning-Program-photo {
    margin: 0
  }
  .learning-Program-photo:nth-child(odd) {
    padding: 0 20px 0 0
  }
  .learning-Program-photo:nth-child(even) {
    padding: 0 0 0 20px
  }
  .learning-Program_Figure + .learning-Program_Texts {
    padding: 24px 0 0
  }
  .learning-Content_Section-title {
    margin: 0
  }
  .learning-Content_Card-wrapper:before, .learning-Content_Card-wrapper:after {
    display: table;
    content: '';
    line-height: 0
  }
  .learning-Content_Card-wrapper:after {
    clear: both
  }
  .learning-Content_Card {
    float: left;
    width: 30.9%;
    padding: 30px 0;
    margin: 0 3.4% 0 0
  }
  .learning-Content_Card:before, .learning-Content_Card:after {
    display: table;
    content: '';
    line-height: 0
  }
  .learning-Content_Card:after {
    clear: both
  }
  .learning-Content_Card:first-child {
    margin: 0 3.4% 0 0
  }
  .learning-Content_Card:nth-child(3n) {
    margin: 0
  }
  .learning-Content_Card:last-child {
    margin: 0
  }
  .learning-Content_Card-title .text {
    border-bottom: none
  }
  .support .support-Intro_Inner {
    padding: 54px 0 76px
  }
  .support .support-Intro_Header {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 0 0 54px
  }
  .support .support-Intro_Heading {
    width: 33.69141%;
    -webkit-flex-basis: 33.69141%;
    flex-basis: 33.69141%;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    padding-right: 20px;
    margin: 0
  }
  .support .support-Nav_Outer {
    width: 33.69141%;
    -webkit-flex-basis: 33.69141%;
    flex-basis: 33.69141%;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    max-width: none
  }
  .support .support-Nav {
    -webkit-justify-content: flex-end;
    justify-content: flex-end
  }
  .support .support-Nav_Inner {
    width: calc(100% - 180px);
    -webkit-flex-basis: auto;
    flex-basis: auto
  }
  .support .support-Nav_List {
    -webkit-justify-content: flex-end;
    justify-content: flex-end
  }
  .support .support-Nav_Item:nth-child(odd) .support-Nav_ItemInner {
    padding: 10px 0 0 10px
  }
  .support .support-Nav_Item:first-child .support-Nav_ItemInner {
    padding: 10px 0 0
  }
  .support .support-Nav_Link {
    transition-property: color, background-color;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  .support .support-Nav_Link:hover {
    background-color: #666;
    color: #fff
  }
  .support .support-Par {
    font-size: 1.2rem;
    letter-spacing: .125em;
    line-height: 1.83333
  }
  html[lang=en] .support .support-Par {
    letter-spacing: .02em
  }
  .support .support-Contents .support-Details {
    display: -webkit-flex;
    display: flex;
    padding: 74px 0 80px;
    -webkit-justify-content: space-between;
    justify-content: space-between
  }
  .support .support-Detail {
    border-bottom: none;
    width: 31.03448%;
    -webkit-flex-basis: 31.03448%;
    flex-basis: 31.03448%;
    padding: 0
  }
  .support .support-Detail_Link {
    transition-property: color, background-color;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.25, .46, .45, .94)
  }
  .support .support-Detail_Link:hover {
    background-color: #666;
    color: #fff
  }
  .tomonokai-Introduction {
    display: -webkit-flex;
    display: flex
  }
  .tomonokai-Introduction .tomonokai-Heading {
    margin-top: 7px
  }
  .tomonokai-Introduction .tomonokai-Text {
    line-height: 1.714
  }
  .tomonokai-Introduction_Image {
    min-width: 330px;
    padding-right: 20px;
    padding-left: 20px;
    margin-right: 20px
  }
  .tomonokai-Advantages_Items {
    margin-top: 55px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between
  }
  .tomonokai-Advantages_Item {
    width: 31.3%;
    margin-top: 0;
    padding-bottom: 55px
  }
  .tomonokai-Advantages_Text {
    font-size: 1.4rem;
    line-height: 1.714
  }
  .tomonokai-Advantages_Others {
    display: -webkit-flex;
    display: flex;
    margin-top: 0
  }
  .tomonokai-Advantages_Others .tomonokai-Heading_Sub {
    width: 200px
  }
  .tomonokai-Advantages_Notes {
    margin-top: 0
  }
  .tomonokai-Fee_Inner {
    display: -webkit-flex;
    display: flex;
    padding: 76px 0 72px
  }
  .tomonokai-Fee_Head {
    width: 25.86207%
  }
  .tomonokai-Fee_HeadInner {
    display: block;
    padding-right: 1.5em
  }
  .tomonokai-Fee_ImgContainer {
    margin: 0 0 34px
  }
  .tomonokai-Fee_Content {
    width: 74.13793%
  }
  .tomonokai-Apply_Inner {
    padding: 78px 0 68px
  }
  .tomonokai-Apply_Section {
    display: -webkit-flex;
    display: flex
  }
  .tomonokai-Apply_Head {
    width: 25.86207%;
    margin: 0 0 34px
  }
  .tomonokai-Apply_HeadInner {
    display: block;
    padding-right: 1.5em
  }
  .tomonokai-Apply_Contents {
    width: 74.13793%
  }
  .tomonokai-Apply_Content {
    margin: 0 0 46px
  }
  .tomonokai-Apply_ContentInner {
    display: -webkit-flex;
    display: flex
  }
  .tomonokai-Apply_ContentHead {
    width: 34.88372%
  }
  .tomonokai-Apply_ContentHeadInner {
    display: block;
    padding-right: 1.5em
  }
  .tomonokai-Apply_Texts {
    width: 65.11628%
  }
  .tomonokai-Apply_Button {
    margin: 12px 0
  }
  .tomonokai-Usage_Head {
    min-width: 35%;
    padding-right: 5%
  }
  .tomonokai-Usage_Item {
    display: -webkit-flex;
    display: flex
  }
  .tomonokai-Usage_Container {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column
  }
  .tomonokai-Usage_Image {
    width: 40%;
    margin-top: 0;
    padding-right: 0;
    padding-left: 0
  }
  .tomonokai-Usage_Steps {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    max-width: 960px;
    margin-left: auto;
    margin-right: auto
  }
  .tomonokai-Usage_Steps:before {
    top: 50px;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
    width: 58%;
    height: 0;
    border-right: 0;
    border-bottom: 1px dashed #f1832c
  }
  .tomonokai-Usage_Steps:before {
    width: 64%
  }
  .tomonokai-Usage_Step {
    width: 31.3%
  }
  .tomonokai-Usage_Step .image {
    padding-right: 0;
    padding-left: 0
  }
  .tomonokai-Usage_Step .text {
    padding-top: 10px;
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 0
  }
  .join-introduction {
    -webkit-flex-direction: column;
    flex-direction: column
  }
  .join-introduction .notice, .join-introduction .explain {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto
  }
  .join-introduction .notice {
    text-align: center
  }
  .form .form-wrapper {
    max-width: 810px;
    margin-right: auto;
    margin-left: auto
  }
  .form .row {
    display: -webkit-flex;
    display: flex;
    padding: 10px 0 14px
  }
  .form .head {
    width: 175px;
    margin-right: 25px;
    padding: 0;
    margin-top: 8px
  }
  .form .body {
    width: 360px
  }
  .form .notes {
    display: -webkit-flex;
    display: flex;
    white-space: nowrap
  }
  .form .column.column-select {
    padding-top: 4px
  }
  .form .column.column-radio {
    padding-top: 8px;
    padding-bottom: 0
  }
  .form .send-btn {
    width: 360px;
    margin-top: 60px;
    margin-right: auto;
    margin-left: auto
  }
  .link {
    position: absolute;
    right: 0;
    top: 25px;
    margin-top: 0
  }
  .form-family-wrap {
    max-width: 810px;
    margin-top: 50px;
    margin-right: auto;
    margin-left: auto
  }
  .send-btn:hover {
    background-color: #fff;
    border: 1px solid #f1832c;
    color: #f1832c
  }
  .br-pc {
    display: block
  }
  .tomonokai-Member_Login {
    max-width: 360px
  }
  .tomonokai-Flow {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto
  }
  .tomonokai-Flow_List:before {
    left: 40px
  }
  .tomonokai-Flow_List:after {
    left: 30px
  }
  .tomonokai-Flow_Item {
    padding: 20px 80px
  }
  .tomonokai-Step {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    padding: 20px 80px;
    max-width: 760px;
    margin-left: auto;
    margin-right: auto
  }
  .tomonokai-Step_Elem {
    padding-right: 0;
    padding-bottom: 0
  }
  .tomonokai-Step_Elem:last-child {
    padding-right: 0;
    padding-bottom: 0
  }
  .tomonokai-Step_Elem .icon-arrow01 {
    left: auto;
    right: -60px;
    bottom: 50%;
    -webkit-transform: translate3d(-50%, 50%, 0) rotate(-90deg);
    transform: translate3d(-50%, 50%, 0) rotate(-90deg)
  }
  .tomonokai-Parts_Buttons {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto
  }
  .tomonokai-Notice_Text {
    text-align: center;
    max-width: 760px;
    margin-left: auto;
    margin-right: auto
  }
  .tomonokai-Area_Title .anchor {
    opacity: 1;
    transition: opacity .4s cubic-bezier(.39, .575, .565, 1)
  }
  .tomonokai-Area_Title .anchor:hover {
    opacity: .8
  }
  .tomonokai-Box {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    max-width: 760px;
    margin-left: auto;
    margin-right: auto
  }
  .tomonokai-Box.item01 {
    -webkit-justify-content: center;
    justify-content: center
  }
  .tomonokai-Box_Item {
    width: 47.5%;
    margin-top: 0
  }
  .tomonokai-Caution {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto
  }
  .tomonokai-Caution_Title {
    padding-top: 8px
  }
  .tomonokai-Send {
    text-align: center
  }
  .tomonokai-Send_Texts {
    max-width: none
  }
  .tomonokai-Send_Definition {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center
  }
  .tomonokai-Send_Definition .text {
    padding-left: 1rem
  }
  .tomonokai-Send_Definition:last-child {
    margin-top: 0
  }
  .whatson_Section {
    padding-bottom: 75px;
    margin-bottom: 75px
  }
  .whatson_Section-heading {
    margin-bottom: 50px
  }
  .qa .intro-Inner {
    padding: 54px 0 0
  }
  .qa .qa-Contents_Inner {
    display: -webkit-flex;
    display: flex
  }
  .qa .index-Outer {
    -webkit-flex-basis: 300px;
    flex-basis: 300px;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    width: 300px;
    margin: 0
  }
  .qa .index-Inner {
    border-top: none;
    border-bottom: none;
    padding: 44px 40px 44px 0;
    transition: -webkit-transform .5s cubic-bezier(.39, .575, .565, 1);
    transition: transform .5s cubic-bezier(.39, .575, .565, 1);
    transition: transform .5s cubic-bezier(.39, .575, .565, 1), -webkit-transform .5s cubic-bezier(.39, .575, .565, 1)
  }
  .sw-Header-nottop.sw-Header-pinned .qa .index-Inner {
    -webkit-transform: translateY(140px);
    transform: translateY(140px)
  }
  .qa .index-Link {
    font-size: 1.2rem;
    line-height: 1.83333
  }
  .qa .index-Link-current {
    color: #333;
    font-weight: 600
  }
  .qa .faq {
    -webkit-flex-basis: 74.13793%;
    flex-basis: 74.13793%;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 1;
    flex-shrink: 1;
    width: 74.13793%
  }
  .qa .faq-Inner {
    padding: 44px 0 0
  }
  .qa .faq-Content_Header {
    margin: 0 0 42px
  }
  .qa .faq-Arrow {
    visibility: hidden
  }
  .qa .faq-List_ImgContenir {
    max-width: 330px
  }
}
@media screen and (min-width:1024px) {
  .main {
    padding-top: 140px
  }
  .sw-Container_Inner {
    padding-right: 60px;
    padding-left: 60px
  }
  .buttons {
    max-width: none;
    padding-left: 60px;
    padding-right: 60px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center
  }
  .buttons .buttons-item {
    margin-top: 0;
    margin-left: 10px
  }
  .buttons .buttons-item:first-child {
    margin-left: 0
  }
  .sw-Accordion {
    min-width: 140px
  }
  .sw-Accordion:hover:after {
    z-index: 99;
    border-right-color: #fff;
    border-bottom-color: #fff
  }
  .sw-Accordion_Title {
    transition-property: background;
    transition-duration: .5s;
    transition-timing-function: cubic-bezier(.39, .575, .565, 1)
  }
  .sw-Accordion_Title:hover {
    background-color: #666;
    color: #fff
  }
  .st-event_Item {
    width: 33.3%
  }
  .sw-Calendar {
    position: fixed;
    right: 60px;
    top: 90px;
    bottom: auto;
    left: auto;
    display: inline-block;
    -webkit-align-items: normal;
    align-items: normal;
    -webkit-justify-content: normal;
    justify-content: normal;
    width: 140px;
    height: 140px;
    padding: 20px;
    z-index: 30;
    transition-property: top;
    transition-duration: .4s;
    transition-timing-function: cubic-bezier(.39, .575, .565, 1)
  }
  .sw-Calendar.is-hide {
    top: -140px
  }
  .sw-Calendar_Detail {
    position: relative;
    width: 104px;
    height: 70px
  }
  .sw-Calendar_Month, .sw-Calendar_Day {
    font-weight: 100;
    font-size: 4rem;
    text-align: right;
    width: 44px
  }
  .sw-Calendar_Month {
    position: absolute;
    left: 2px;
    top: -10px;
    text-align: center
  }
  .sw-Calendar_Day {
    position: absolute;
    bottom: -5px;
    right: 5px;
    text-align: center
  }
  .sw-Calendar_State {
    display: inline-block;
    padding-top: 18px;
    padding-left: 0
  }
  .sw-Calendar_Icon {
    top: auto;
    bottom: 15px;
    right: 20px;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
  .sw-Calendar .icon-slash {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 65px;
    height: 65px;
    margin: 0
  }
  .header {
    height: 140px;
    border-bottom-color: #f1832c;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    top: 0;
    transition-property: top;
    transition-duration: .5s;
    transition-timing-function: cubic-bezier(.39, .575, .565, 1)
  }
  .header.is-open {
    width: 100%;
    height: 100%;
    z-index: 998;
    transition-duration: .5s
  }
  .header.is-hide {
    border-bottom-color: transparent;
    top: -140px;
    height: 140px
  }
  .header-Head {
    position: absolute;
    left: 60px;
    top: 30px;
    padding: 0
  }
  .header-MenuArea {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    width: 110px;
    right: auto;
    top: 55px;
    left: -8px
  }
  .header-MenuArea:after {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    width: 1px;
    height: 20px;
    background-color: #ccc
  }
  .is-open .header-MenuArea {
    width: 40px
  }
  .is-open .header-MenuArea:after {
    content: none
  }
  .header-MenuText {
    display: block;
    color: #888;
    padding-left: 2px;
    font-size: 1.2rem
  }
  .is-open .header-MenuText {
    display: none
  }
  .header-Inner {
    position: absolute;
    bottom: auto;
    right: auto;
    top: 0;
    padding: 0;
    height: 100%;
    display: block;
    visibility: visible;
    opacity: 1;
    transition-property: opacity;
    transition-duration: .5s;
    transition-timing-function: cubic-bezier(.39, .575, .565, 1);
    transition-delay: .4s
  }
  .footer {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 40px 60px 50px
  }
  .footer-Links {
    display: block;
    padding-left: 31px
  }
  .head-Sort {
    padding: 55px 60px 0
  }
  .head-Sort_Section {
    padding-right: 175px
  }
  .head-Sort_Title {
    width: 33.69141%;
    -webkit-flex-basis: 33.69141%;
    flex-basis: 33.69141%
  }
  .head-Sort_Body {
    width: 62.5%;
    -webkit-flex-basis: 62.5%;
    flex-basis: 62.5%
  }
  .head-Sort.head-Sort--type01 {
    padding: 70px 60px 0
  }
  .top .main {
    padding-top: 0
  }
  .tp-MainVisual_List {
    height: 100%
  }
  .tp-MainVisual_Item {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    background: linear-gradient(to bottom, transparent 0, rgba(0, 0, 0, .4) 100%);
    padding: 0 60px 145px
  }
  .tp-MainVisual .tp-MainVisual_Item-black .tp-MainVisual_Category {
    color: #333
  }
  .tp-MainVisual .tp-MainVisual_Item-black .tp-MainVisual_Heading {
    color: #333
  }
  .tp-MainVisual .tp-MainVisual_Item-black .tp-MainVisual_Heading:hover {
    color: #f1832c
  }
  .tp-MainVisual .tp-MainVisual_Item-black .tp-MainVisual_Term {
    color: #333
  }
  .tp-MainVisual_Category {
    color: #fff
  }
  .tp-MainVisual_Heading {
    color: #fff;
    margin-top: 11px;
    letter-spacing: .1em
  }
  html[lang=en] .tp-MainVisual_Heading {
    letter-spacing: .02em
  }
  .tp-MainVisual_Heading:hover {
    color: #f1832c
  }
  .tp-MainVisual_Term {
    color: #fff;
    margin-top: 10px;
    letter-spacing: .1em
  }
  .tp-MainVisual_Indicators {
    left: 60px;
    bottom: 12%
  }
  .tp-NewsTicker {
    width: 100%;
    padding: 19px 60px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    position: absolute;
    left: 0
  }
  .tp-NewsTicker_Items {
    -webkit-flex: 1;
    flex: 1;
    margin-top: 0;
    min-height: 0
  }
  .exhibition-Head {
    padding: 55px 60px 0
  }
  .exhibition-Head_Sort {
    padding-right: 175px
  }
  .exhibition-Head_Sort .exhibition-Head_Sort-year {
    margin-left: 15px;
    margin-right: 5px
  }
  .exhibition-Head_Sort .exhibition-Head_Sort-year:before {
    height: 90%
  }
  .exhibition-Section {
    padding: 75px 60px
  }
  .exhibition-Section:first-child {
    padding: 45px 60px 75px
  }
  .calendar-Header {
    padding: 55px 0 65px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between
  }
  .calendar-Header_Heading {
    margin: 0
  }
  .calendar-Header_Menu {
    padding: 0 180px 0 0
  }
  .calendar-Header_Menu .calendar-Header_Menu-year {
    width: auto
  }
  .calendar_Main {
    padding: 0 60px 80px
  }
  .calendar_Main .calendar-Container {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between
  }
  .calendar_Main .calendar-Container .calendar-Wrapper {
    width: 48.3%
  }
  .calendar_Main .calendar-Container .calendar-Detail {
    width: 51.7%
  }
  .calendar-Wrapper_Body .cell .anchor {
    width: 40px;
    height: 40px
  }
  .calendar-Wrapper_Body .cell .anchor:hover:before {
    width: 40px;
    height: 40px;
    margin: -20px 0 0 -20px
  }
  .calendar-Wrapper .row {
    border-width: 2px;
    padding: 0 20px
  }
  .calendar-Wrapper_Note {
    padding: 0 0 0 55px
  }
  .calendar-Detail {
    position: relative;
    margin-top: 0;
    padding: 0 0 0 5%
  }
  .calendar-Detail:after {
    content: '';
    background-color: #ddd;
    width: 1px;
    height: 93%;
    display: block;
    position: absolute;
    left: 0;
    bottom: 0
  }
  .calendar-Detail .calendar-Detail_Heading {
    display: inline-block;
    position: absolute;
    top: 0;
    left: -3.5%;
    -webkit-transform: rotate(-90deg) translate(-100%, -100%);
    transform: rotate(-90deg) translate(-100%, -100%);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0
  }
  .concept .concept-Nav_Inner {
    padding-right: 40px;
    padding-left: 40px
  }
  .learning-Section {
    width: 22.3%;
    margin-right: 3.4%
  }
  .learning-Section:nth-child(even) {
    margin-right: 3.4%
  }
  .learning-Section:nth-child(4n) {	/*	20200824	learning-Section:last-child {修正	*/
    margin-right: 0
  }
  .learning-Header_Inner {
    padding-right: 60px;
    padding-left: 60px
  }
  .learning-Content_Inner {
    padding-right: 60px;
    padding-left: 60px
  }
  .support .support-Intro_Header {
    padding-right: 175px
  }
  .support .support-Intro_Heading {
    width: 33.69141%;
    -webkit-flex-basis: 33.69141%;
    flex-basis: 33.69141%
  }
  .support .support-Nav_Outer {
    width: 62.5%;
    -webkit-flex-basis: 62.5%;
    flex-basis: 62.5%
  }
  .tomonokai .sw-Calendar {
    display: block
  }
  .tomonokai-Container {
    padding-bottom: 0;
    padding-left: 60px;
    padding-right: 60px
  }
  .tomonokai-Introduction_Image {
    min-width: 360px;
    margin-right: 40px
  }
  .tomonokai-Advantages_Others {
    margin-top: 27px
  }
  .tomonokai-Usage_Head {
    min-width: 25.86%;
    padding-right: 0
  }
  .tomonokai-Usage_Container {
    -webkit-flex-direction: row;
    flex-direction: row
  }
  .tomonokai-Usage_Image {
    min-width: 34.9%;
    padding-right: 3.4%
  }
  .tomonokai-Usage_Text {
    margin-top: 0
  }
  .tomonokai-Usage_Note {
    margin-top: 34px
  }
  .tomonokai-Usage_Notice.attention {
    margin-top: 37px
  }
  .tomonokai-Usage_Step {
    width: 26.9%
  }
  .join .sw-Calendar {
    display: block
  }
  .sw-Accordion-member {
    min-width: 200px
  }
  .sw-Accordion-member {
    width: 52.63%
  }
  .sw-Accordion-member .sw-Accordion_Text {
    font-size: 1.2rem
  }
  html[lang=en] .sw-Accordion-member .sw-Accordion_Text {
    letter-spacing: .02em
  }
  .tomonokai-Member {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: flex-start;
    align-items: flex-start
  }
  .tomonokai-Member_Head {
    width: 25.86%
  }
  .tomonokai-Member_Text {
    margin-top: 0;
    width: 37.5%
  }
  .tomonokai-Member_Login {
    width: 34.75%;
    margin-top: 0;
    margin-left: auto
  }
  .tomonokai-Member_Login-item.logout {
    opacity: 1;
    transition: opacity .4s cubic-bezier(.39, .575, .565, 1);
    width: calc(93% - 200px)
  }
  .tomonokai-Member_Login-item.logout:hover {
    opacity: .8
  }
  .whatson_Contents {
    padding: 0 60px;
    margin-top: 45px
  }
}
@media screen {
  [hidden ~ =screen] {
    display: inherit
  }
  [hidden ~ =screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important
  }
}
@media screen and (max-width:374px) {
  .sw-Accordion {
    max-width: 100%;
    width: 140px
  }
  .tp-MainVisual_Category {
    font-size: 1rem
  }
  .tp-MainVisual_Heading {
    font-size: 1.2rem
  }
  .tp-MainVisual_Term {
    font-size: 1rem
  }
  .calendar-Wrapper_Body .cell .anchor {
    font-size: 1.6rem
  }
  .support .support-Nav_List {
    -webkit-flex-direction: column;
    flex-direction: column
  }
  .support .support-Nav_Item + .support-Nav_Item .support-Nav_ItemInner {
    padding: 10px 0 0
  }
  .support .support-Nav_Link {
    width: auto
  }
  .sw-Accordion-member:after {
    right: 8px
  }
}
@media screen and (min-height:668px) and (max-width:1023px) {
  .sw-Calendar {
    padding: 30px 25px
  }
}