html * {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
*, *:after, *:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body {
	font-size: 2.2vh;
	font-family: 'Playfair Display', 'Sawarabi Mincho', "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

/* @group basic */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, img, strong, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, tbody, tfoot, thead, tr, th, td, header, article, aside, figcaption, figure, footer, menu, nav, section {
	margin: 0;
	padding: 0;
	border: 0;
}
dl, ul {
	list-style-type: none;
}
img {
	vertical-align: bottom;
}
.individual {
	display: none;
	overflow: hidden;
}
.bold {
	font-weight: bold !important;
}
.large {
	font-size: 160% !important;
}
.middle {
	font-size: 80%;
}
.small {
	font-size: 60%;
	font-weight: normal;
}
.ft_en {font-family: 'News Cycle', sans-serif;}
.ft_jp-min {font-family: 'Shippori Mincho', serif !important;}
.ft_en-l {font-family: 'Hepta Slab', serif !important; font-weight: 100 !important;}
.ft_en-r {font-family: 'Hepta Slab', serif !important; font-weight: 400 !important;}
.ft_en-b {font-family: 'Hepta Slab', serif !important; font-weight: 900 !important;}
.tx_wt {
	color: rgb(255,255,255) !important;
}
.tx_bg {
	color: rgb(255,253,238) !important;
}
.tx_KEY {
	color: rgb(13,3,66) !important;
}
.bg_KEY {
	background-color: rgb(227,144,52) !important;
    padding: 2vh !important;
}
.bg_wt {
	background-color: rgba(255,255,255,.9) !important;
    padding: 2vh !important;
}
.bg_bg {
	background-color: rgb(255,253,238) !important;
}
.bg_stn {
	background: repeating-linear-gradient(45deg, #fdf3f0 0px, #fdf3f0 .5vw, transparent .5vw, transparent .6vw);
}
.bg_stg {
	background: repeating-linear-gradient(-45deg, rgb(144,13,255) 0, rgb(144,13,255) .2vw, transparent .2vw, transparent 3vw);
}
.bg_grd {
background: -moz-linear-gradient(-45deg,  rgb(255,255,255) 0%, rgb(137,209,239) 30%, rgb(0,170,209) 50%);
background: -webkit-linear-gradient(-45deg,  rgb(255,255,255) 0%,rgb(137,209,239) 30%,rgb(0,170,209) 50%);
background: linear-gradient(135deg,  rgb(255,255,255) 0%,rgb(137,209,239) 30%,rgb(0,170,209) 50%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00aad1',GradientType=1 );
}
.bg_blr {
	backdrop-filter: blur(.5vw) !important;
}
.bg_dt {
	background-image: radial-gradient(rgb(180,127,45) 25%, transparent 0%),
    radial-gradient(rgb(180,127,45) 25%, transparent 0%);
	background-size: 8px 8px;
	background-position: 0 0, 4px 4px;
}
.bg_dtw {
	background-image: radial-gradient(rgb(255,253,238) 25%, transparent 0%),
    radial-gradient(rgb(255,253,238) 25%, transparent 0%);
	background-size: 8px 8px;
	background-position: 0 0, 4px 4px;
}
.bg_dtd {
	background-image: radial-gradient(rgb(43,27,10) 25%, transparent 0%),
    radial-gradient(rgb(43,27,10) 25%, transparent 0%);
	background-size: 8px 8px;
	background-position: 0 0, 4px 4px;
}
.bg_dtwl {
  background-image:
    radial-gradient(rgb(240,85,10) 25%, transparent 0%),
    radial-gradient(rgb(240,85,10) 25%, transparent 0%);
  background-size: 200px 200px;
  background-position: 0 0, 100px 100px;
}
.bg_1r {
    border-radius:1vw;
}
.bg_hr {
    border-radius:.5vw;
}
.bg_grdKEY {
background-color: #070c47;
background-image: linear-gradient(350deg, #070c47 0%, #dc0515 10%, #dc0515 45%, #ffffff 85%, #fdf3f0 90%);
}
.bg_bl h1, .bg_bl p, .bg_gr h1, .bg_gr p {
	color: #333 !important;
}
/* @end */

/* @group a */
a {
	text-decoration: none;
	background-color: transparent;
	font-weight: bold;
}
a:link {
	color: rgb(43,27,10);
}
a:visited {
	color: rgb(43,27,10);
}
a:active {
	color: rgb(43,27,10);
	outline: 0;
}
a:hover {
	color: rgb(43,27,10);
	outline: 0;
}
/* @end */

/* @group page_top */
#page-top {
	width: 100%;
	height: 8vh;
	display: none;
	position: fixed;
	right: 0;
	bottom: 0;
	z-index: 900;
}
#page-top p {
	text-align: center;
	background: rgba(13,3,66,.7);
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
}
#page-top p:hover {
	background: rgba(13,3,66,1);
}
#move-page-top {
	color: rgb(255,255,255);
	line-height: 8vh;
	text-decoration: none;
	display: block;
	cursor: pointer;
}
/* @end */

/* @loading_animation */
.box{
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9000;
  -webkit-transition: all 1.2s ease; /* 1.2秒でフェードアウト */
          transition: all 1.2s ease;
  color: rgb(50,219,240); /* ローディングアニメーションカラー */
  background-color: rgba(120,120,120,.4); /* 背景カラー */
}
.spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transform-origin: center;
          transform-origin: center;
  width: 120px;
  height: 120px;
}
.spinner span {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 1vh;
}
.spinner.type1 {
  border-radius: 50%;
  border-width: 8px;
  border-style: solid;
  border-color: rgb(50,219,240) rgba(255, 255, 255, 0.12) rgba(255, 255, 255, 0.12);
  /* ローディング要素のアニメーションを指定 */
  -webkit-animation: spinner1_1 1.5s infinite linear forwards;
          animation: spinner1_1 1.5s infinite linear forwards;
}
.spinner.type1 span {
  /* Loading テキストのアニメーションを指定 */
  animation: spinner_loading_text 1.5s infinite linear forwards reverse;
}
@-webkit-keyframes spinner1_1 {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) rotate(360deg);
            transform: translate(-50%, -50%) rotate(360deg);
  }
}
@keyframes spinner1_1 {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) rotate(360deg);
            transform: translate(-50%, -50%) rotate(360deg);
  }
}
@-webkit-keyframes spinner_loading_text {
  0% {
    opacity: 1;
    -webkit-transform: translate(-50%, -50%) rotate(0deg);
            transform: translate(-50%, -50%) rotate(0deg);
  }
  50% {
    opacity: 0;
    -webkit-transform: translate(-50%, -50%) rotate(180deg);
            transform: translate(-50%, -50%) rotate(180deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(-50%, -50%) rotate(360deg);
            transform: translate(-50%, -50%) rotate(360deg);
  }
}
@keyframes spinner_loading_text {
  0% {
    opacity: 1;
    -webkit-transform: translate(-50%, -50%) rotate(0deg);
            transform: translate(-50%, -50%) rotate(0deg);
  }
  50% {
    opacity: 0;
    -webkit-transform: translate(-50%, -50%) rotate(180deg);
            transform: translate(-50%, -50%) rotate(180deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(-50%, -50%) rotate(360deg);
            transform: translate(-50%, -50%) rotate(360deg);
  }
}
.box.loaded{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}

/* global navi */
#gnav-btn {
    color: rgb(7,12,71);
    font-size: 6vh;
	line-height: 1em;
    
    position: fixed;
    top: 1vh;
    left: 1.8vh;
    z-index: 9000;
    padding: .5vw;

    border: 1px solid rgba(7,12,71,1);
    border-radius: .5vw .5vw;
  }
  #gnav-input:checked ~ #gnav-content {
    top: 0;
  }
  #gnav-content {
    position: fixed;
    top: -100%;
    left: 0;
    z-index: 900;
    transition: 0.3s;
    width: 100%;
  }
  .humb-menu__title {
      padding: 1.5rem;
      overflow: hidden
  }
  .humb-menu label {
    display: flex;
    justify-content: space-between;
    padding: 1.5rem;
    cursor: pointer;
    border-top: 0.5px solid rgba(200,200,200,1);
  }
  .humb-menu input {
    display: none;
  }
  .humb-menu .accshow {
    height: 0;
    overflow: hidden;
  }
  .humb-menu .accshow p {
    padding: 1.5rem;
  }
  .humb-menu .cssacc:checked + .accshow {
    height: auto;
  }

/* @group linkout */
#linkout {
    padding: 1vw;
    display: block;
	overflow: hidden;
	z-index: 900;
}
#linkout dd {
	width: calc(60% / 3);
    max-width: 80px;
	padding: 1vw;
	display: inline;
	overflow: hidden;
	float: right;
}
#linkout dd figure {
	width: 100%;
    overflow: hidden;
	-webkit-border-radius: .5vw;
	-moz-border-radius: .5vw;
	-ms-border-radius: .5vw;
	-o-border-radius: .5vw;
	border-radius: .5vw;
}
#linkout dd figure img {
	width: 100%;
}
/* @end */

#container {
	width: 100%;
	position: relative;
}

.pc {
	visibility: visible;
}
.tb {
	visibility: hidden;
	display: none;
    overflow: hidden;
}
.sp {
	visibility: hidden;
	display: none;
    overflow: hidden;
}

/* @group header */
header {
	width: 100%;
	height: 10vh;
	margin: 0 auto;
    text-align: center;
	position: fixed;
	overflow: hidden;
	z-index: 6;
    background-color: rgba(227,144,52,.5);
}
header h1 {
	visibility: hidden;
	display: none;
	overflow: hidden;
}
header figure {
	width: 100%;
	height: 100%;
}
#header_logo {
	position: relative;
	height: 90%;
    margin: .4vh auto 0;
	overflow: hidden;
}
#header_logo img {
	height: 100%;
}

header nav {
    position: absolute;
    top: 2vh;
    right: 1.8vh;
    z-index: 900;
}
header nav a {
    color: rgb(255,255,255);
	font-size: 5vh;
	line-height: 1em;

	margin: 0vh .25vw 0;
    padding: .5vw;

    border: 1px solid rgba(200,200,200,1);
    border-radius: .5vw .5vw;
  background-image: linear-gradient(to left, rgba(200,200,200,.2) 0%, rgba(255,255,255,.5) 100%);
}
/* @end */

#contents_box {
	width: 100%;
	min-width: 300px;
	margin: 0 auto;
	overflow: hidden;
	position: relative;
}

.text-box {
    width: 96%;
    max-width: 960px;
    padding: 0;
    margin: 0 auto 0;
}
.eye-catch {
	font-size: 5vh;
	line-height: 1.2em;
	font-weight: 900;
    text-align: center;
    margin: 4vh 0 4vh;
}
.catch {
	font-size: 3vh;
	line-height: 1.4em;
	font-weight: 900;
    text-align: justify;
    margin: 0 0 4vh;
}
.sub-catch {
	font-size: 2.6vh;
	line-height: 1.4em;
	font-weight: bold;
    
    max-width: 720px;
	border-left: .2vw solid rgb(43,27,10);
	padding: 1vh 1.8vw;
    margin: 0vh 0 2vh 0;
}
.lead {
	color: rgb(43,27,10);
	font-size: 2.4vh;
	font-weight: bold;
	line-height: 1.8em;
	text-align: center;

	overflow: hidden;
	position: relative;
	display: block;
	padding: 2vh 4vw;
	margin: 0 0 4vh;
}
.catch-2line {
    width: 100%;
    font-size: 3.6vh;
	line-height: 1.4em;
	font-weight: 900;
    text-align: center;
    margin: 4vh 0 4vh;
    
  position: relative;
  display: inline-block;
  padding: 0 55px;
    overflow: hidden;
}
.catch-2line:before, .catch-2line:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 45px;
  height: 2px;
  border-top: solid 1px rgb(13,3,66);
  border-bottom: solid 1px rgb(13,3,66);
}
.catch-2line:before {left:0;}
.catch-2line:after {right: 0;}
.catch-sline {
  position: relative;
  line-height: 1.4;
  padding:0.25em 1em;
  display: inline-block;
  top:0;
}
.catch-sline:before, .catch-sline:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
.catch-sline:before {
  border-left: solid 1px black;
  border-top: solid 1px black;
  border-bottom: solid 1px black;
  left: 0;
}
.catch-sline:after {
  content: '';
  border-top: solid 1px black;
  border-right: solid 1px black;
  border-bottom: solid 1px black;
  right: 0;
}

.bodytext {
	font-size: 2.2vh;
	font-weight: normal;
	line-height: 2em;
	text-align: justify;
	text-justify: inter-ideograph;
    
	width: 100%;
    max-width: 720px;
	margin: 0vh auto 4vh;
}
.box-bodytext {
	color: rgb(43,27,10);
	font-size: 1.8vh;
	font-weight: normal;
	line-height: 1.8em;
	text-align: justify;
	text-justify: inter-ideograph;

    max-width: 720px;
	margin: 2vh auto;
    padding: 2vh;
}
.coverimg {
	margin: 12vh auto 6vh;
    width: 100%;
    text-align: center;
	overflow: hidden;
	display: block;
}
.coverimg source, .coverimg img {
    max-height: 640px;
    margin: 0 auto;
    padding: 0;
}
.sqimg {
	margin: 0 auto 2vh;
  width: 100%;
  height: 0;
  padding-bottom: 100%;
	overflow: hidden;
	display: block;
}
.catchimg {
	width: 100%;
	max-width: 480px;
	margin: 0 auto 2vh;
	padding: 0%;
	overflow: hidden;
	position: relative;
/*	display: block;*/
}

.inline-box {
  position: relative;
  width: 100%;
    margin: 0 auto 4vh;
}
.inline-box:before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
.inline-box iframe {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
.catchimg figcaption, .inline-box figcaption,.sqimg figcaption {
	color: rgb(43,27,10);
	font-size: 1.8vh;
	font-weight: normal;
	line-height: 1em;
	text-align: justify;
	text-justify: inter-ideograph;
    padding: 1vh;
}
.catchimg img {
	width: 100%;
}
.circleimg {
  width: 80%;
  height: 80%;
    max-width: 300px;
    max-height: 300px;
    margin: 4vh auto 0;
  border-radius: 50%;
    text-align: center;
    border: 1px solid rgb(255,255,255);
    background-color: rgb(255,255,255);
}
.circleimg img {
/*    width: auto;*/
	width: 100%;
}

.article_2box {
    width: 100%;
    margin: 0vh auto 0vh;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	align-items: stretch;
    justify-content: space-between;
    background-color: transparent;
        break-inside: avoid;
}
.contents_2box {
    width: 48%;
    margin: 0 0;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
	display: -webkit-flex;
    display: flex;
    flex-direction: column;
}
.article_2box dl {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    break-inside: avoid;
    gap: 2vw;
}
.article_2box dd {
	padding: 0;
    margin: 0 0;
}
.article_2box dd:nth-child(even){margin: 10vh 0 0;}

.fb-page {
  width: 100%
}

/* @group table */
table {
	width: 100%;
    max-width: 960px;
	margin: 0 auto 4vh;
	overflow: hidden;
	position: relative;
	border: 2px solid #f8b617;
    background-color: rgb(255,255,255);
}
tr {
	margin: 0;
	overflow: hidden;
}
tr:nth-child(even){background-color: rgb(250,250,250);}
th {
	width: 36%;
	color: #fff;
	font-size: 2vh;
	font-weight: bold;
	line-height: 14px;
	text-align: center;
	vertical-align: middle;
	overflow: hidden;
	background-color: #f8b617;
	border-bottom: 1px solid #fff;
}
td {
	color: #333;
	font-size: 1.8vh;
	font-weight: normal;
	line-height: 1.4em;
	text-align: left;
	vertical-align: middle;
	overflow: hidden;
	padding: 1vh;
	border-bottom: 1px dotted #f8b61c;
}
td:nth-child(even) {
	width: 65%;
}
/* @end */

/*左右の矢印の色を変える*/
.slick-prev:before,
.slick-next:before {
    color: rgb(255,255,255);
    background: rgba(120,120,120,.8);
}
/*左右の矢印の位置を変える*/
.slick-next {
    right: 20px;
    z-index: 99;
}
.slick-prev {
     left: 15px;
    z-index: 100;
}
/*スライド数のドットの色を変える*/
.slick-dots li.slick-active button:before,
.slick-dots li button:before {
    color: #fff;
}
/*スライド画像の横幅可変*/
img {
    max-width: 100%;
    height: auto;
}

/* init */
.background {
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    position: fixed;
    background-position: center center;
    opacity: 0;
-webkit-background-size: cover;
        background-size: cover;
-webkit-transition: all 0.5s ease 0s;
   -moz-transition: all 0.5s ease 0s;
        transition: all 0.5s ease 0s;
}
.show .background {
    opacity: 1;
}
.wrap {
    position: relative;
    overflow: hidden;
    z-index: 5;
}
/* design*/
#content01_bg {background-image: url(../images/okc_bg01.jpg);}
#content02_bg {background-image: url(../images/okc_bg02.jpg);}
#content03_bg {background-image: url(../images/okc_bg03.jpg);}
#content04_bg {background-image: url(../images/okc_bg04.jpg);}
#content05_bg {background-image: url(../images/okc_bg05.jpg);}
#content06_bg {background-image: url(../images/okc_bg06.jpg);}
#content07_bg {background-image: url(../images/okc_bg07.jpg);}
#content08_bg {background-image: url(../images/okc_bg08.jpg);}
#content10_bg {background-image: url(../images/okc_bg10.jpg);}
#content02 .wrap {
    background-color: rgba(178,1,47,0.8);
}
#content03 .wrap {
    background-color: rgba(208,100,128,0.8);
}
#content04 .wrap {
    background-color: rgba(111,139,193,0.8);
}
#content05 .wrap {
    background-color: rgba(20,65,153,0.8);
}
#content07 .wrap {
    background-color: rgba(32,153,59,0.8);
}
#content09 .wrap {
    background-color: rgba(145,0,102,1);
}

.fadein {
	opacity: 0;
	transition: all .2s;
}
.fadein.scrollin {
	opacity: 1;
}

.arc {
min-height: 50vh;
border-bottom-right-radius: 100% 50vh;
border-bottom-left-radius: 100% 30vh;
margin-left: -50%;
margin-right: -50%;
padding-left: 50%;
padding-right: 50%;
}

.hero {
  position: relative;
}
/* video */
.video-box {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100vh;
}
.video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
/* overlay */
.overlay::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
/*  background: rgba(0,150,220, 0.4);*/
}
/* text */
.mvtext-box {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background: rgba(0,150,220, 0.4);
}

.btn_d01 {
    text-align: center;

    width: 50%;
    max-width: 240px;
    margin: 6vh auto;
    padding: 2vh 1vw;
    color: #fff;
  border-radius: 102vh;
  background-image: -webkit-gradient(linear, right top, left top, from(rgb(135,0,165)), to(rgba(220,10,25,0.2)));
  background-image: -webkit-linear-gradient(right, 135,0,165) 0%, rgba(220,10,25,0.2) 100%;
  background-image: linear-gradient(to left, rgb(135,0,165) 0%, rgba(220,10,25,0.2) 100%);
}
.btn_d02 {
    font-size: 2.4vh;
    text-align: center;
    line-height: 1em;
    
    width: 80%;
    max-width: 540px;
    position: relative;
  overflow: hidden;
    padding: 2vh 1vw;
    margin: 6vh auto;
  border: 1vh solid rgb(135,0,165);
  border-radius: 100vh;

      background-image: -webkit-gradient(linear, right top, left top, from(rgb(135,0,165)), to(rgba(220,10,25,0.2)));
  background-image: -webkit-linear-gradient(right, 135,0,165) 0%, rgba(220,10,25,0.2) 100%;
  background-image: linear-gradient(to left, rgb(135,0,165) 0%, rgba(220,10,25,0.2) 100%);
}
.btn_d02 span {
  font-size: 4vh;
  line-height: 4vh;
  position: absolute;
  top: calc(50% - 2vh);
  left: 10%;
  display: block;
  width: 2vh;
  height: 2vh;
  color: rgb(220,10,25);
  border-radius: 50%;
  background: rgb(135,0,165);
}

/* @group footer */
footer {
	width: 100%;
	padding: 2vh 0 4vh;
    background-color: rgb(13,3,66);
	overflow: hidden;
	position: relative;
	z-index: 900;
}
.footer_contents {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;

	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	overflow: hidden;
	position: relative;
}
#footer_left {
	width: 65%;

	display: flex;
	justify-content: space-between;
	align-items: center;
}
.footer_logo {
	width: 30%;
	text-align: center;
}
.footer_logo img {
	width: 100%;
	max-height: 12vh;
}
#footer_right {
	width: 30%;
	padding: 1vh 0;
}
#footer_right dl {
	width: 100%;
	margin: 0 0 1.5vh;
}
#footer_right dd {
	font-size: 1.5vh;
	line-height: 1.8em;
	font-weight: normal;
	padding: 0;
}
#footer_right p {
	color: rgb(142,124,119);
	font-size: 1.5vh;
	line-height: 1em;
}

/* @group footer_a */
#footer_right a {
	text-decoration: none;
	background-color: transparent;
}
#footer_right a:link {
	color: rgb(142,124,119);
}
#footer_right a:visited {
	color: rgb(142,124,119);
}
#footer_right a:active {
	color: rgb(142,124,119);
	outline: 0;
}
#footer_right a:hover {
	color: rgb(142,124,119);
	text-decoration: underline;
	outline: 0;
}
/* @end */

/* @end */

/* @group Clearfix */
.clearfix:before, .clearfix:after {
	content: "";
	display: table;
}
.clearfix:after {
	clear: both;
}
.clearfix {
	zoom: 1;
}
/* @end */

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

.contents_2box {
    width: 96%;
    margin: 0 auto;
}
.article_2box dl {
    grid-template-columns: 1fr 1fr;
}


.pc {
	visibility: hidden;
	display: none;
	overflow: hidden;
}
.tb {
	visibility: hidden;
	display: none;
	overflow: hidden;
}
.sp {
	visibility: visible;
	display: block;
}
}

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

.footer_contents {
	flex-direction: column;
}
#footer_left {
	width: 100%;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
}
.footer_logo {
	width: 100%;
	margin: 2vh 0 2vh;
}
#footer_right {
	width: 100%;
}
#footer_right dd {
	font-size: 2vh;
	line-height: 3em;
	padding: 0 5% 0;
	border-bottom: 1px solid rgb(142,124,119);
}
#footer_right p {
	font-size: 2vh;
	line-height: 3em;
	text-align: center;
}
}