@charset "UTF-8";
/*
* project_name
* main.css
*
*/
@-webkit-keyframes slide_xs {
	0%,
	100% {
		-webkit-transform: rotate(-0.5deg);
		        transform: rotate(-0.5deg);
	}
	50% {
		-webkit-transform: rotate(0.5deg);
		        transform: rotate(0.5deg);
	}
}
@keyframes slide_xs {
	0%,
	100% {
		-webkit-transform: rotate(-0.5deg);
		        transform: rotate(-0.5deg);
	}
	50% {
		-webkit-transform: rotate(0.5deg);
		        transform: rotate(0.5deg);
	}
}

@-webkit-keyframes slide_sm {
	0%,
	100% {
		-webkit-transform: rotate(-0.5deg);
		        transform: rotate(-0.5deg);
	}
	50% {
		-webkit-transform: rotate(0.5deg);
		        transform: rotate(0.5deg);
	}
}

@keyframes slide_sm {
	0%,
	100% {
		-webkit-transform: rotate(-0.5deg);
		        transform: rotate(-0.5deg);
	}
	50% {
		-webkit-transform: rotate(0.5deg);
		        transform: rotate(0.5deg);
	}
}

@-webkit-keyframes slide_md {
	0%,
	100% {
		-webkit-transform: rotate(-0.5deg);
		        transform: rotate(-0.5deg);
	}
	50% {
		-webkit-transform: rotate(0.5deg);
		        transform: rotate(0.5deg);
	}
}

@keyframes slide_md {
	0%,
	100% {
		-webkit-transform: rotate(-0.5deg);
		        transform: rotate(-0.5deg);
	}
	50% {
		-webkit-transform: rotate(0.5deg);
		        transform: rotate(0.5deg);
	}
}

@-webkit-keyframes slide_x_xs {
	0%,
	100% {
		-webkit-transform: translateX(-15px);
		        transform: translateX(-15px);
	}
	50% {
		-webkit-transform: translateX(5px);
		        transform: translateX(5px);
	}
}

@keyframes slide_x_xs {
	0%,
	100% {
		-webkit-transform: translateX(-15px);
		        transform: translateX(-15px);
	}
	50% {
		-webkit-transform: translateX(5px);
		        transform: translateX(5px);
	}
}

@-webkit-keyframes slide_x_sm {
	0%,
	100% {
		-webkit-transform: translateX(-10px);
		        transform: translateX(-10px);
	}
	50% {
		-webkit-transform: translateX(10px);
		        transform: translateX(10px);
	}
}

@keyframes slide_x_sm {
	0%,
	100% {
		-webkit-transform: translateX(-10px);
		        transform: translateX(-10px);
	}
	50% {
		-webkit-transform: translateX(10px);
		        transform: translateX(10px);
	}
}

@-webkit-keyframes slide_x_md {
	0%,
	100% {
		-webkit-transform: translateX(-5px);
		        transform: translateX(-5px);
	}
	50% {
		-webkit-transform: translateX(5px);
		        transform: translateX(5px);
	}
}

@keyframes slide_x_md {
	0%,
	100% {
		-webkit-transform: translateX(-5px);
		        transform: translateX(-5px);
	}
	50% {
		-webkit-transform: translateX(5px);
		        transform: translateX(5px);
	}
}

@-webkit-keyframes slide_y_xs {
	0%,
	100% {
		-webkit-transform: translateY(-15px);
		        transform: translateY(-15px);
	}
	50% {
		-webkit-transform: translateY(5px);
		        transform: translateY(5px);
	}
}

@keyframes slide_y_xs {
	0%,
	100% {
		-webkit-transform: translateY(-15px);
		        transform: translateY(-15px);
	}
	50% {
		-webkit-transform: translateY(5px);
		        transform: translateY(5px);
	}
}

@-webkit-keyframes slide_y_sm {
	0%,
	100% {
		-webkit-transform: translateY(-10px);
		        transform: translateY(-10px);
	}
	50% {
		-webkit-transform: translateY(10px);
		        transform: translateY(10px);
	}
}

@keyframes slide_y_sm {
	0%,
	100% {
		-webkit-transform: translateY(-10px);
		        transform: translateY(-10px);
	}
	50% {
		-webkit-transform: translateY(10px);
		        transform: translateY(10px);
	}
}

@-webkit-keyframes slide_y_md {
	0%,
	100% {
		-webkit-transform: translateY(-5px);
		        transform: translateY(-5px);
	}
	50% {
		-webkit-transform: translateY(5px);
		        transform: translateY(5px);
	}
}

@keyframes slide_y_md {
	0%,
	100% {
		-webkit-transform: translateY(-5px);
		        transform: translateY(-5px);
	}
	50% {
		-webkit-transform: translateY(5px);
		        transform: translateY(5px);
	}
}

/* ------------------------
	Foundation
------------------------ */
html,
body {
	height: 100%;
}

*,
*:after,
*:before {
	box-sizing: border-box;
}

* {
	margin: 0;
	padding: 0;
	font-size: inherit;
	line-height: inherit;
}

pre,
textarea {
	overflow: auto;
}

[hidden],
audio:not([controls]),
template {
	display: none;
}

details,
main,
summary {
	display: block;
}

input[type=number] {
	width: auto;
}

input[type=search] {
	-webkit-appearance: textfield;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
	-webkit-appearance: none;
}

progress {
	display: inline-block;
}

small {
	font-size: 75%;
}

sub,
sup {
	position: relative;
	vertical-align: baseline; 
	font-size: 75%;
	line-height: 0;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

textarea {
	resize: vertical;
}

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align: middle;
}

img {
	border: 0; 
	max-width: 100%;
	height: auto;
}

button,
input,
select,
textarea {
	min-height: 1.5em;
	color: inherit;
	font-family: inherit; 
	font-weight: inherit;
	font-style: inherit;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	cursor: pointer; 

	-webkit-appearance: button;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	padding: 0; 
	border: 0;
}

input {
	line-height: normal;
}

code,
kbd,
pre,
samp {
	font-family: monospace,monospace;
}

ol,
ul {
	list-style: none;
}

select {
	   -moz-appearance: none;
	-webkit-appearance: none;
}

table {
	border-spacing: 0;
	border-collapse: collapse;
}

fieldset {
	border: 0;
}

/* ------------------------
	Base Settings
------------------------ */
html {
	font-size: 16px;
}

body {
	background-color: #fff;
	word-wrap: break-word; 
	color: #000;
	font-family: Noto Sans Japanese, YuGothic, "ヒラギノ角ゴ ProN W3", "Lucida Grande", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Verdana, "ＭＳ Ｐゴシック", sans-serif;
	line-height: 1.75;

	-webkit-font-smoothing: antialiased;
	        font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}

a {
	text-decoration: underline; 
	color: #fff;
}
a:visited {
	color: #fff;
}
a:hover {
	text-decoration: none; 
	color: #fff;
}
a:active {
	text-decoration: none; 
	color: #ff8000;
}
a[href^="tel:"] {
	cursor: text; 
	text-decoration: none;
}

::-moz-selection {
	background-color: #76a02d;
	color: #fff;
	text-shadow: none;
}

::selection {
	background-color: #76a02d;
	color: #fff;
	text-shadow: none;
}

/* ------------------------
	utilities Classes
------------------------ */
.hidden {
	display: none !important;
	visibility: hidden;
}

.visuallyhidden {
	overflow: hidden;
	clip: rect(0 0 0 0);
	position: absolute;
	margin: -1px;
	padding: 0;
	border: 0;
	width: 1px; 
	height: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
	overflow: visible;
	clip: auto;
	position: static;
	margin: 0;
	width: auto; 
	height: auto;
}

.invisible {
	visibility: hidden;
}

.clearfix:before,
.clearfix:after {
	content: " ";
	display: table;
}

.clearfix:after {
	clear: both;
}

.clearfix {
	*zoom: 1;
}

/* ------------------------
	余白 調整用class
------------------------ */
.mt-0 {
	margin-top: 0px !important;
}

.mb-0 {
	margin-bottom: 0px !important;
}

.mt-5 {
	margin-top: 5px !important;
}

.mb-5 {
	margin-bottom: 5px !important;
}

.mt-10 {
	margin-top: 10px !important;
}

.mb-10 {
	margin-bottom: 10px !important;
}

.mt-15 {
	margin-top: 15px !important;
}

.mb-15 {
	margin-bottom: 15px !important;
}

.mt-20 {
	margin-top: 20px !important;
}

.mb-20 {
	margin-bottom: 20px !important;
}

.mt-25 {
	margin-top: 25px !important;
}

.mb-25 {
	margin-bottom: 25px !important;
}

/* ------------------------
	text-align 調整用class
------------------------ */
.align-center {
	text-align: center !important;
}

.align-left {
	text-align: left !important;
}

.align-right {
	text-align: right !important;
}

/* ------------------------
	hidden sp/pc
------------------------ */
.hidden-sp {
	display: none;
}
@media screen and (min-width: 1000px) {
	.hidden-sp {
		display: block;
	}
}

.hidden-pc {
	display: block;
}
@media screen and (min-width: 1000px) {
	.hidden-pc {
		display: none;
	}
}

/* ------------------------
  layout
------------------------ */
/* header ------------ */
.l-hdr {
	position: relative;
	z-index: 110; 
	width: 100%;
}
.l-hdr .hdr_body {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 50px;
	background-color: #000;
}
@media screen and (min-width: 736px) {
	.l-hdr .hdr_body {
		position: relative;
		border-bottom: none; 
		height: 40px;
		background-image: url(/assets/sp/odilon_redon/img/common/hdr_bg.png);
		background-repeat: no-repeat;
		background-position: left top;
	}
}
@media screen and (min-width: 1000px) {
	.l-hdr .hdr_body {
		background-position: center top;
	}
}
.l-hdr .inner {
	box-sizing: border-box;
	position: relative;
	margin: 0 auto; 
	width: 100%;
	height: 100%;
}
@media screen and (min-width: 736px) {
	.l-hdr .inner {
		padding: 0 10px;
	}
}
@media screen and (min-width: 1000px) {
	.l-hdr .inner {
		width: 1000px;
	}
}
.l-hdr .logo {
	position: absolute;
	top: 0;
	left: 0;
}
.l-hdr .logo > a {
	display: block;
	display: block;
	overflow: hidden;
	width: 110px;
	height: 50px;
	background-image: url(/assets/sp/odilon_redon/img/common/hdr_logo_sp.png);
	background-size: cover; 
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
@media screen and (min-width: 736px) {
	.l-hdr .logo > a {
		display: block;
		overflow: hidden;
		margin-top: 6px;
		width: 130px;
		height: 27px;
		background-image: url(/assets/sp/odilon_redon/img/common/hdr_logo.png); 
		white-space: nowrap;
		text-indent: 100%;
		font-size: 0;
	}
}
.l-hdr .menu {
	overflow: hidden;
	position: fixed;
	z-index: 1002; 
	top: 50px;
	left: -100%;
	width: 100%;
	height: 100vh;
	background-color: #000;
}
.l-hdr .menu.is-open {
	overflow-y: auto;
	left: 0;
	padding: 0 0 60px 0;
}
@media screen and (max-width: 736px) {
	.l-hdr .menu {
		height: 100%;
		min-height: calc(100vh - 50px);
		transition: all 0.5s ease-in-out;
	}
}
@media screen and (min-width: 736px) {
	.l-hdr .menu {
		position: absolute;
		top: 0;
		right: 0;
		left: inherit;
		width: 570px;
		height: 40px;
	}
}
.l-hdr .menu ul {
	display: block;
	text-align: center;
}
@media screen and (min-width: 736px) {
	.l-hdr .menu ul {
		display: -ms-flexbox;
		display: flex;
	}
}
.l-hdr .menu li {
	border-bottom: 1px solid #443f37;
}
@media screen and (min-width: 736px) {
	.l-hdr .menu li {
		padding: 0 0 0 35px;
	}
}
.l-hdr .menu li > a {
	display: block;
	padding: 12px 0;
	transition: all 0.3s ease-in-out; 
	text-align: center;
	text-decoration: none;
	color: #f5f5f5;
	font-size: 20px;
	font-weight: bold;
	line-height: 1;
}
@media screen and (min-width: 736px) {
	.l-hdr .menu li > a {
		padding: 0;
		font-size: 11px; 
		line-height: 40px;
	}
}
.l-hdr .menu li > a:hover {
	color: #999;
}
.l-hdr .menu li:nth-child(2) {
	padding: 0;
	border-top: 1px solid #443f37;
}
@media screen and (min-width: 736px) {
	.l-hdr .menu li:nth-child(2) {
		padding: 0 0 0 38px;
		border-top: 0;
	}
}
.l-hdr .menu li.menu_access {
	display: none;
}
@media screen and (min-width: 736px) {
	.l-hdr .menu li.menu_access {
		display: block;
		padding: 0; 
		width: 118px;
	}
	.l-hdr .menu li.menu_access > a {
		display: block;
		padding: 0 12px 0 35px;
		width: 100%;
		height: 100%;
		background: url(/assets/sp/odilon_redon/img/common/hdr_ico_access.png) no-repeat 14px 12px #0a828a; 
		color: #fff;
	}
	.l-hdr .menu li.menu_access > a:hover {
		background-color: #009ca6;
	}
}
.l-hdr .menu li.is-sp {
	display: block;
}
@media screen and (min-width: 736px) {
	.l-hdr .menu li.is-sp {
		display: none;
	}
}
.l-hdr .menu li.is-tb-pc {
	display: block;
}
@media screen and (max-width: 736px) {
	.l-hdr .menu li.is-tb-pc {
		display: none;
	}
}
.l-hdr .menu li.menu_sns {
	padding: 34px 0 38px 0;
	border: none;
}
@media screen and (min-width: 736px) {
	.l-hdr .menu li.menu_sns {
		display: none;
	}
}
.l-hdr .menu li.menu_sns .sns {
	display: -ms-flexbox;
	display: flex;
	margin: 0 auto;
	width: 205px; 

	-ms-flex-pack: justify; 

	    justify-content: space-between;
}
.l-hdr .menu li.menu_sns .sns > li {
	display: block;
	overflow: hidden;
	border: none; 
	width: 45px;
	height: 45px;
	transition: opacity 0.3s ease-in-out;
	background-image: url(/assets/sp/odilon_redon/img/common/gnav_sns.png);
	background-size: 180px 45px;
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
.l-hdr .menu li.menu_sns .sns > li:hover {
	opacity: 0.75;
}
.l-hdr .menu li.menu_sns .sns > li > a {
	display: block;
	width: 100%;
	height: 100%;
}
.l-hdr .menu li.menu_sns .sns .sns_t {
	background-position: 0 0;
}
.l-hdr .menu li.menu_sns .sns .sns_f {
	background-position: -45px 0;
}
.l-hdr .menu li.menu_sns .sns .sns_y {
	background-position: -90px 0;
}
.l-hdr .menu li.menu_sns .sns .sns_i {
	background-position: -135px 0;
}
@media screen and (max-width: 736px) {
	.l-hdr .menu li.menu_question {
		display: inline-block;
		position: relative;
		padding: 0 6px 0 0;
		border: none; 
		vertical-align: top;
	}
	.l-hdr .menu li.menu_question > a {
		padding: 0;
		font-size: 14px;
	}
	.l-hdr .menu li.menu_question + .menu_question {
		padding: 0 0 0 14px;
	}
	.l-hdr .menu li.menu_question + .menu_question:before {
		content: "/";
		display: block;
		position: absolute;
		top: -3px;
		left: 0;
		color: #fff; 
		font-size: 14px;
	}
}
.l-hdr .menu li.menu_language {
	padding: 8px 0 0 0;
	border: none;
}
.l-hdr .menu li.menu_language .language li {
	display: inline-block;
	position: relative;
	padding: 0 6px 0 0;
	border: none; 
	vertical-align: top;
}
.l-hdr .menu li.menu_language .language li > a {
	padding: 0;
	font-size: 14px;
}
.l-hdr .menu li.menu_language .language li + li {
	padding: 0 0 0 14px;
}
.l-hdr .menu li.menu_language .language li + li:before {
	content: "/";
	display: block;
	position: absolute;
	top: -3px;
	left: 0;
	color: #fff; 
	font-size: 14px;
}
.l-hdr .sp-btn {
	float: right;
}
@media screen and (min-width: 736px) {
	.l-hdr .sp-btn {
		display: none;
	}
}
.l-hdr .sp-btn ul {
	display: -ms-flexbox;
	display: flex;
}
.l-hdr .sp-btn li {
	display: block;
	overflow: hidden;
	box-sizing: content-box;
	border-left: 1px solid #443f37;
	width: 50px;
	height: 50px;
	cursor: pointer;
	transition: all 0.3s ease-in-out;
	background-size: cover; 
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
.l-hdr .sp-btn li:last-child {
	border-left: none;
}
.l-hdr .sp-btn li a {
	display: block;
	width: 100%;
	height: 100%;
}
.l-hdr .sp-btn .btn_access,
.l-hdr .sp-btn .btn_museum,
.l-hdr .sp-btn .btn_exhibition {
	background-size: cover;
}
.l-hdr .sp-btn .btn_access {
	background-image: url(/assets/sp/odilon_redon/img/common/hdr_nav_access_sp.png);
}
.l-hdr .sp-btn .btn_museum {
	background-image: url(/assets/sp/odilon_redon/img/common/hdr_nav_museum_sp.png);
}
.l-hdr .sp-btn .btn_museum.is-open {
	background-image: url(/assets/sp/odilon_redon/img/common/hdr_nav_museum_sp_close.png);
}
.l-hdr .sp-btn .btn_exhibition {
	background-image: url(/assets/sp/odilon_redon/img/common/hdr_nav_exhibition_sp.png);
}
.l-hdr .sp-btn .btn_exhibition.is-open {
	background-image: url(/assets/sp/odilon_redon/img/common/hdr_nav_exhibition_sp_close.png);
}
.l-hdr .sp-btn img {
	max-width: 100%;
}

/* globalnav ------------ */
.l-gnav {
	position: relative;
}
.l-gnav .gnav_mask {
	transition: all 0.3s ease-in-out;
}
.l-gnav.is-open .gnav_mask {
	display: none;
}
@media screen and (min-width: 736px) {
	.l-gnav.is-open .gnav_mask {
		display: block;
		position: fixed;
		z-index: 1001;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.6);
	}
}

.gnav_btn {
	display: none;
}
@media screen and (min-width: 736px) {
	.gnav_btn {
		display: block;
		position: fixed;
		z-index: 1000; 
		top: 60px;
		right: 20px;
		width: 74px;
		height: 74px;
		cursor: pointer;
		transition: all 0.3s ease-in-out;
		background-color: #76a02d;
	}
	.gnav_btn:hover {
		background-color: #88b639;
	}
	.gnav_btn .btn_inner {
		position: absolute;
		top: 24px;
		right: 0;
		left: 0;
		margin: 0 auto;
		width: 42px;
	}
	.gnav_btn .btn_inner:after {
		content: "MENU";
		position: absolute;
		top: 24px;
		left: 50%;
		-webkit-transform: translate(-50%, 0);
		        transform: translate(-50%, 0);
		color: #fff;
		font-size: 12px;
		font-weight: bold;
		line-height: 1;
	}
	.gnav_btn .btn_inner .line {
		position: absolute;
		left: 50%;
		width: 28px;
		height: 2px;
		transition: all 0.3s ease-in-out; 
		-webkit-transform: translate(-50%, 0); 
		        transform: translate(-50%, 0);
		background: #fff;
	}
	.gnav_btn .btn_inner .line_01 {
		top: 0;
	}
	.gnav_btn .btn_inner .line_02 {
		top: 7px;
	}
	.gnav_btn .btn_inner .line_03 {
		top: 14px;
	}
}
@media screen and (min-width: 1000px) {
	.gnav_btn {
		top: 72px;
		right: 30px;
	}
}

.gnav_overlay {
	overflow-y: scroll;
	position: fixed;
	z-index: 1002;
	top: 50px;
	right: -100%;
	width: 100%;
	height: 100vh;
	transition: all 0.5s ease-in-out; 
	background: #76a02d;
}
.gnav_overlay.is-open {
	right: 0;
}
@media screen and (min-width: 736px) {
	.gnav_overlay {
		top: 0;
		width: 330px;
		transition: all 0.3s ease-in-out;
	}
	.gnav_overlay .btn-close {
		position: absolute;
		top: 14px;
		right: 14px;
		width: 40px;
		height: 40px;
		cursor: pointer;
		transition: all 0.2s ease-in-out;
	}
	.gnav_overlay .btn-close:after {
		content: "CLOSE";
		position: absolute;
		top: 27px;
		right: 4px;
		color: #fff;
		font-size: 10px;
		font-weight: bold;
		line-height: 1;
	}
	.gnav_overlay .btn-close:hover {
		opacity: 0.75;
	}
	.gnav_overlay .btn-close .line {
		position: absolute;
		right: 6px;
		width: 27px;
		height: 2px;
		transition: all 0.3s ease-in-out; 
		background: #fff;
	}
	.gnav_overlay .btn-close .line_01 {
		top: 12px;
		-webkit-transform: rotate(45deg);
		        transform: rotate(45deg);
	}
	.gnav_overlay .btn-close .line_02 {
		top: 12px;
		-webkit-transform: rotate(-45deg);
		        transform: rotate(-45deg);
	}
}

.gnav_content {
	padding: 0 0 100px; 
	width: 100%;
	text-align: center;
}
@media screen and (min-width: 736px) {
	.gnav_content {
		padding: 77px 0 30px;
	}
}
.gnav_content .title {
	padding: 30px 0;
	background: #fff; 
	text-align: center;
}
.gnav_content .title img {
	display: inline-block;
	width: 212px;
	height: 140px;
}
.gnav_content .menu li {
	border-top: solid 1px #fff;
}
.gnav_content .menu li:last-child {
	border-bottom: solid 1px #fff;
}
.gnav_content .menu li > a {
	display: block;
	padding: 16px 0;
	transition: opacity 0.3s ease-in-out; 
	text-align: center;
	text-decoration: none;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	line-height: 1;
}
.gnav_content .menu li > a:hover {
	opacity: 0.75;
}
.gnav_content .link {
	padding: 20px 0;
}
@media screen and (min-width: 736px) {
	.gnav_content .link {
		padding: 24px 0;
	}
}
.gnav_content .sns {
	display: -ms-flexbox;
	display: flex;
	margin: 0 auto;
	width: 205px; 

	-ms-flex-pack: justify; 

	    justify-content: space-between;
}
@media screen and (min-width: 736px) {
	.gnav_content .sns {
		width: 255px;
	}
}
.gnav_content .sns > li {
	display: block;
	overflow: hidden;
	width: 45px;
	height: 45px;
	transition: opacity 0.3s ease-in-out; 
	background-image: url(/assets/sp/odilon_redon/img/common/gnav_sns.png);
	background-size: 180px 45px;
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
.gnav_content .sns > li:hover {
	opacity: 0.75;
}
.gnav_content .sns > li > a {
	display: block;
	width: 100%;
	height: 100%;
}
@media screen and (min-width: 736px) {
	.gnav_content .sns > li {
		display: block;
		overflow: hidden;
		width: 56px;
		height: 56px;
		background-size: 224px 56px; 
		white-space: nowrap;
		text-indent: 100%;
		font-size: 0;
	}
}
.gnav_content .sns .sns_t {
	background-position: 0 0;
}
.gnav_content .sns .sns_f {
	background-position: -45px 0;
}
@media screen and (min-width: 736px) {
	.gnav_content .sns .sns_f {
		background-position: -56px 0;
	}
}
.gnav_content .sns .sns_y {
	background-position: -90px 0;
}
@media screen and (min-width: 736px) {
	.gnav_content .sns .sns_y {
		background-position: -112px 0;
	}
}
.gnav_content .sns .sns_i {
	background-position: -135px 0;
}
@media screen and (min-width: 736px) {
	.gnav_content .sns .sns_i {
		background-position: -168px 0;
	}
}
.gnav_content .logo {
	display: none;
}
@media screen and (min-width: 736px) {
	.gnav_content .logo {
		display: block;
		display: block;
		overflow: hidden;
		margin: 24px auto 0;
		width: 140px;
		height: 30px;
		background-image: url(/assets/sp/odilon_redon/img/common/gnav_pola_logo.png);
		background-repeat: no-repeat;
		background-size: cover; 
		white-space: nowrap;
		text-indent: 100%;
		font-size: 0;
	}
}

/* main ------------ */
.l-main {
	overflow: hidden;
	position: relative;
	margin-top: 50px;
	width: 100%;
	height: auto;
	min-height: calc(100vh - 50px);
}
@media screen and (min-width: 736px) {
	.l-main {
		margin-top: 0;
		min-height: calc(100vh - 40px);
	}
}

.l-main_visual {
	margin-top: 0;
}
@media screen and (min-width: 736px) {
	.l-main_visual {
		margin-top: 0;
	}
}

/* footer ------------ */
.l-ftr {
	position: relative;
	z-index: 100;
}

/* SNS share */
.ftr_share {
	display: -ms-flexbox;
	display: flex;
	margin: 0 auto;
	padding: 0 0 60px 0; 
	width: 270px;

	-ms-flex-pack: justify;

	    justify-content: space-between;
}
@media screen and (min-width: 736px) {
	.ftr_share {
		padding: 0 0 80px 0; 
		width: 180px;
	}
}
.ftr_share .share_item.share_item-fb {
	margin: -3px 0 0 0;
}
@media screen and (min-width: 736px) {
	.ftr_share .share_item.share_item-line {
		display: none;
	}
}

/* body */
.ftr_body {
	position: relative;
}

.ftr_body .inner {
	position: relative;
	z-index: 101; 
	margin: 0 auto;
	width: 320px;
}
@media screen and (min-width: 736px) {
	.ftr_body .inner {
		width: 640px;
	}
}
.ftr_body .inner .menu {
	display: -ms-flexbox;
	display: flex;

	-ms-flex-wrap: wrap;

	    flex-wrap: wrap;
	-ms-flex-pack: justify;
	    justify-content: space-between;
}
.ftr_body .inner .menu > li {
	width: 150px;
}
@media screen and (min-width: 736px) {
	.ftr_body .inner .menu > li {
		width: 300px;
	}
}
.ftr_body .inner .menu > li:nth-child(odd) {
	padding-right: 6px; 
	text-align: right;
}
@media screen and (min-width: 736px) {
	.ftr_body .inner .menu > li:nth-child(odd) {
		padding-right: 12px;
	}
}
.ftr_body .inner .menu > li:nth-child(even) {
	padding-left: 6px; 
	text-align: left;
}
@media screen and (min-width: 736px) {
	.ftr_body .inner .menu > li:nth-child(even) {
		padding-left: 12px;
	}
}
.ftr_body .inner .menu > li:nth-child(odd):nth-last-child(2),
.ftr_body .inner .menu > li:last-child {
	border-bottom: none;
}
.ftr_body .inner .menu > li > a {
	display: block;
	padding: 22px 0;
	width: 100%;
	transition: all 0.3s ease-in-out; 
	text-decoration: none;
	color: #000;
	font-size: 10px;
}
@media screen and (min-width: 736px) {
	.ftr_body .inner .menu > li > a {
		padding: 30px 0;
		font-size: 16px;
	}
}

.ftr_body.cover {
	padding: 50px 0 0 0;
}
@media screen and (min-width: 736px) {
	.ftr_body.cover {
		padding: 74px 0 0 0;
	}
}
.ftr_body.cover .logo {
	display: block;
	overflow: hidden;
	margin: 0 auto;
	width: 170px;
	height: 140px;
	background: url(/assets/sp/odilon_redon/img/common/ftr_cover_logo.png) no-repeat 0 0;
	background-size: cover; 
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
@media screen and (min-width: 736px) {
	.ftr_body.cover .logo {
		display: block;
		overflow: hidden;
		margin: 0 auto;
		width: 358px;
		height: 294px;
		background: url(/assets/sp/odilon_redon/img/common/ftr_cover_logo.png) no-repeat 0 0;
		background-size: cover; 
		white-space: nowrap;
		text-indent: 100%;
		font-size: 0;
	}
}
.ftr_body.cover .menu {
	padding: 12px 0 0 0;
}
@media screen and (min-width: 736px) {
	.ftr_body.cover .menu {
		padding: 60px 0;
	}
}
.ftr_body.cover .menu > li {
	border-bottom: 2px solid #000;
	font-size: 10px; 
	font-weight: bold;
}
@media screen and (min-width: 736px) {
	.ftr_body.cover .menu > li {
		border-bottom: 2px solid #000;
		font-size: 16px;
	}
}
.ftr_body.cover .menu > li > a:hover {
	opacity: 0.75;
}

/* pagetop */
.ftr_body.uftr .pagetop {
	position: absolute;
	z-index: 102; 
	top: -22px;
	right: 0px;
	width: 44px;
	height: 44px;
}
@media screen and (min-width: 1000px) {
	.ftr_body.uftr .pagetop {
		top: -50px;
		right: 80px;
		width: 100px;
		height: 100px;
	}
}
.ftr_body.uftr .pagetop a {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	transition: all 0.3s ease-in-out; 
	background-color: #0a828a;
}
.ftr_body.uftr .pagetop a .arrow {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 20px;
	height: 20px;
	background: url(/assets/sp/odilon_redon/img/common/pagetop_arrow.png) no-repeat 0 0;
	background-size: cover;
}
@media screen and (min-width: 1000px) {
	.ftr_body.uftr .pagetop a .arrow {
		width: 40px;
		height: 40px;
		transition: all 0.3s ease-in-out;
		background: url(/assets/sp/odilon_redon/img/common/pagetop_arrow.png) no-repeat 0 0;
		background-size: cover;
	}
}
@media screen and (min-width: 1000px) {
	.ftr_body.uftr .pagetop a:hover {
		background-color: #009ca6;
	}
	.ftr_body.uftr .pagetop a:hover .arrow {
		-webkit-transform: translateY(-5px);
		        transform: translateY(-5px);
	}
}

.ftr_body.uftr {
	padding: 40px 0 0 0;
	background-color: #333;
}
@media screen and (min-width: 736px) {
	.ftr_body.uftr {
		padding: 80px 0 0 0;
	}
}
.ftr_body.uftr .logo {
	display: block;
	overflow: hidden;
	margin: 0 auto;
	border-right: no-repeat;
	width: 80px;
	height: 22px;
	background-image: url(/assets/sp/odilon_redon/img/common/ftr_uftr_logo.png);
	background-size: cover; 
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
@media screen and (min-width: 736px) {
	.ftr_body.uftr .logo {
		display: block;
		overflow: hidden;
		width: 160px;
		height: 44px;
		white-space: nowrap;
		text-indent: 100%; 
		font-size: 0;
	}
}
.ftr_body.uftr .menu {
	padding: 15px 0 26px 0;
}
@media screen and (min-width: 736px) {
	.ftr_body.uftr .menu {
		padding: 12px 0 48px 0;
	}
}
.ftr_body.uftr .menu > li {
	border-bottom: 1px solid #252525;
}
@media screen and (min-width: 736px) {
	.ftr_body.uftr .menu > li {
		border-bottom: 2px solid #252525;
	}
}
.ftr_body.uftr .menu > li > a {
	padding: 15px 0;
	color: #fff; 
	font-weight: bold;
}
@media screen and (min-width: 736px) {
	.ftr_body.uftr .menu > li > a {
		padding: 30px 0;
	}
}
.ftr_body.uftr .menu > li > a:hover {
	color: #999;
}

/* copyright */
.l-ftr .copyright {
	height: 50px; 
	background-color: #000;
}
@media screen and (min-width: 736px) {
	.l-ftr .copyright {
		height: 60px;
	}
}
.l-ftr .copyright > p {
	text-align: center;
	color: #fff; 
	font-size: 8px;
	line-height: 50px;
}
@media screen and (min-width: 736px) {
	.l-ftr .copyright > p {
		font-size: 12px; 
		line-height: 60px;
	}
}

/* トップ以外のcover ------------ */
.l-cover {
	margin-top: 50px;
	border-bottom: solid 1px #000; 
	width: 100%;
	height: 188px;
}
@media screen and (min-width: 1000px) {
	.l-cover {
		margin-top: 40px;
	}
}
.l-cover .cover_logo {
	margin: 0 auto;
	width: 248px;
	height: 86px;
	background: url(/assets/sp/odilon_redon/img/common/main_title.png) no-repeat;
	background-size: 100% auto;
}
@media screen and (min-width: 736px) {
	.l-cover .cover_logo {
		margin: 0 auto;
		width: 486px;
		height: 132px;
	}
}
.l-cover .cover_logo > a {
	display: block;
	width: 100%;
	height: 100%;
}
.l-cover .cover_logo span {
	display: block;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%; 
	font-size: 0;
}

/* ----------------------
ローディングアニメーション
------------------------ */
.l-loading {
	position: fixed;
	z-index: 100000; 
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #f4f0ea;
}
.l-loading .bg_spray_red {
	position: absolute;
	top: -75px;
	left: -75px;
	width: 185px;
	height: 185px;
}
@media screen and (min-width: 1000px) {
	.l-loading .bg_spray_red {
		top: -185px;
		left: -75px;
		width: 370px;
		height: 370px;
	}
}
.l-loading .bg_spray_beige {
	position: absolute;
	right: -75px;
	bottom: -75px;
	width: 185px;
	height: 185px;
}
@media screen and (min-width: 1000px) {
	.l-loading .bg_spray_beige {
		right: -75px;
		bottom: -185px;
		width: 370px;
		height: 370px;
	}
}

.loader_wrap {
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	height: 100%;

	-ms-flex-align: center;

	    align-items: center;
	-ms-flex-pack: center;
	    justify-content: center;
}

.loader {
	display: inline-block;
	position: relative;
	margin: 0 0.5em;
	width: 1em; 
	height: 0.5em;
	font-size: 2em;
}

.loader:before,
.loader:after {
	content: "";
	display: block;
	position: absolute;
	width: 0.5em; 
	height: 0.5em;
}

.loader:before {
	-webkit-animation: load-before 2s ease-in-out infinite, zoom-before 0.66s ease-in-out infinite;
	        animation: load-before 2s ease-in-out infinite, zoom-before 0.66s ease-in-out infinite;
	background: #76a02d;
}

.loader:after {
	-webkit-animation: load-after 2s ease-in-out infinite, zoom-after 0.66s ease-in-out infinite;
	        animation: load-after 2s ease-in-out infinite, zoom-after 0.66s ease-in-out infinite;
	background: #e60021;
}

.small {
	font-size: 1em;
}

.large {
	font-size: 4em;
}

.circle:before,
.circle:after {
	border-radius: 50%;
}

.circle-before:before {
	border-radius: 50%;
}

.circle-after:after {
	border-radius: 50%;
}

/* ---------- ANIMATION ---------- */
@-webkit-keyframes load-before {
	0% {
		left: 0;
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
	50% {
		left: 100%;
		-webkit-transform: scale(1);
		        transform: scale(1);
	}
	100% {
		left: 0;
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
}
@keyframes load-before {
	0% {
		left: 0;
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
	50% {
		left: 100%;
		-webkit-transform: scale(1);
		        transform: scale(1);
	}
	100% {
		left: 0;
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
}

@-webkit-keyframes load-after {
	0% {
		left: 100%;
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
	50% {
		left: 0;
		-webkit-transform: scale(1);
		        transform: scale(1);
	}
	100% {
		left: 100%;
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
}

@keyframes load-after {
	0% {
		left: 100%;
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
	50% {
		left: 0;
		-webkit-transform: scale(1);
		        transform: scale(1);
	}
	100% {
		left: 100%;
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
}

@-webkit-keyframes zoom-before {
	0% {
		z-index: 0;
	}
	50% {
		z-index: 1;
	}
	100% {
		z-index: 0;
	}
}

@keyframes zoom-before {
	0% {
		z-index: 0;
	}
	50% {
		z-index: 1;
	}
	100% {
		z-index: 0;
	}
}

@-webkit-keyframes zoom-after {
	0% {
		z-index: 1;
	}
	50% {
		z-index: 0;
	}
	100% {
		z-index: 1;
	}
}

@keyframes zoom-after {
	0% {
		z-index: 1;
	}
	50% {
		z-index: 0;
	}
	100% {
		z-index: 1;
	}
}

/* ------------------------
  Components
------------------------ */
/* btn ------------ */
.c-btn {
	display: inline-block; 
	width: auto;
	height: 55px;
	background-color: #76a02d;
	text-align: center;
	color: #fff;
	font-size: 22px;
	line-height: 55px;
}
.c-btn a {
	display: block;
	transition: all 0.3s ease-in-out;
}
.c-btn a span {
	display: inline-block;
	position: relative;
	color: #fff;
	font-weight: bold;
}
.c-btn a span:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 27px;
	height: 27px;
	transition: all 0.3s ease-in-out;
	background: url(/assets/sp/odilon_redon/img/common/c-btn_arrow_left.png) no-repeat 0 0;
}
.c-btn a:hover {
	background-color: #88b639;
}
.c-btn a:hover span:before {
	-webkit-transform: translateX(-5px);
	        transform: translateX(-5px);
}

/* ------------------------
	Print Styles
------------------------ */
@media print {
	*,
	*:before,
	*:after {
		background: transparent !important;
		color: #000 !important;
		box-shadow: none !important;
		text-shadow: none !important;
	}
	a,
	a:visited {
		text-decoration: underline;
	}
	tr,
	img {
		page-break-inside: avoid;
	}
	img {
		max-width: 100% !important;
	}
	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}
	h2,
	h3 {
		page-break-after: avoid;
	}
}