@charset "UTF-8";
/* CSS Document */

/* ==========================================================================
common
========================================================================== */

body {
	font-family: "Noto Sans Japanese", sans-serif;
	font-weight: 300;
	color: #353535;
	/*background-color: #F8F3ED;*/
}

a {
	color: #353535;
	/*-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;*/
	cursor: pointer !important;
}

a:hover, a:focus {
	color: #9D5B8B;
	text-decoration: none;
}

a:hover img {
	opacity: 0.8;
}

p {
	word-spacing: 1px;
	line-height: 1.9;
	text-align: left;
}

.idt {
	text-indent: 1em;
}

.sp {
	display: none;
}


.wrapper {
	min-height: 100vh;
    position: relative;
	padding-bottom: 150px;
    box-sizing: border-box;
}


.section-padding {
	padding: 40px 0 50px;
}

.light-bg {
	background: url(../img/bg_light.jpg) repeat left top; 
}

.bright-bg {
	background: url(../img/bg_bright.jpg) repeat left top; 
}

.soft-bg {
	background-color: #52AF29;
}

.dark-bg {
	background-color: #333;
}


.nopadding {
	padding: 0;
}

.inner {
	padding-top: 40px;
	padding-bottom: 50px;
}

.text-center {
	text-align: center
}

.red {
	color: #D52423;
}

.underline {
	text-decoration: underline;
}

.fs110 {
	font-size: 110%;
}

.bold {
	font-weight: bold;
}

.center {
	text-align: center;
}

/* ==========================================================================

header

========================================================================== */

header {
	position: relative;
	z-index: 1030;
}

.header {
	margin: 0 auto;
	padding: 10px 0 12px;
	width: 87%;
	z-index: 1000;
	transition: .2s;
	
}

.is-animation .header {
	transition: .2s;
}


.logo {
	float: left;
	margin: 5px 0;
}

.logo a{
	width: auto;
	display: inline-block;
}

.logo a img{
	width: 240px;
	height: auto;
	vertical-align: top;
	display: inline-block;
	margin-right: 20px;
}

.logo a span{
	display: inline-block;
	font-size: 85%;
    line-height: 1.4;
    padding-top: 6px;
}

.is-animation .logo a{
	margin-top: 0;
}
	
.logo01{
	width: 118px;
	height: auto;
	margin-right: 10px;
	transition: .2s;
}

.logo02 {
	width: 300px;
	height: auto;
	transition: .2s;
}

.is-animation .logo01 {
	width: 80px;
	height: auto;
	transition: .2s;
}

.is-animation .logo02 {
	width: 265px;
	height: auto;
}


.top-img-box {
	text-align: center;
	margin: 0;
	padding: 0;
	position: relative;
}

.top-main {
	top: 50%;
	left: 50%;
	position: absolute;
	margin-top: -250px;
	margin-left: -360px;	
	width: 710px;
}

.top-logo {
	text-align: center;
	margin-bottom: 30px;
}

.top-lead {
	color: #fff;
	font-size: 300%;
	text-align: center;
	line-height: 1.4;
	text-shadow: 0 3px 5px #111;
}

.top-text {
	color: #fff;
	font-size: 120%;
	text-align: center;
	text-shadow: 0 3px 5px #111;
}

.banner-box {
	float: right;
	margin-top:3px;
}

.banner-box img {
	height: 56px;
	width: auto;
}

.hmenu {
	margin: 0 auto;
	padding: 0;
	/*width: 1000px;*/
	width: 100%;
	transition: .2s;
}

.hmenu {
	background-color: #9D5B8B;
	box-shadow: 0 2px 2px rgba(0,0,0,0.3);
}

.hmenu .menu {
	margin: 0 auto;
	width: 90%;
}

.hmenu .menu ul {
	padding: 12px 0;
	margin: 0 auto;
	text-align: center;
}

.hmenu .menu ul li{
	display: inline-block;
	margin: 0;
	width: 24%;
	border-right: 1px dotted #fff;
	box-sizing: border-box;
}

.hmenu .menu ul li:first-child {
	border-left: 1px dotted #fff;
}

.hmenu .menu ul li a,
.hmenu .menu ul li span{
	color: #fff;
	display: block;
}

.hmenu .menu ul li a img,
.hmenu .menu ul li span img{
	height: 26px;
	width: auto;
	margin-right: 10px;
}


.hmenu .menu ul li a:hover{
	opacity: 0.7;
}

.hmenu .menu ul.dd-menu {
	display: none;
	margin-left: -5px;
	position: absolute;
	width: 22% ;
	background-color: #9D5B8B;
	box-sizing: border-box;
}

.hmenu .menu ul.dd-menu li {
	width: 100%;
	text-align: left;
	border: none;
	margin: 0;
	padding: 0;
}

.hmenu .menu ul.dd-menu li.nolink {
	color: #fff;
}

.hmenu .menu ul.dd-menu li.nolink,
.hmenu .menu ul.dd-menu li a {
	font-size: 95% ;
	padding: 5px 10px 5px 30px;
	margin: 0;
	box-sizing: border-box;
	background: url(../img/lh_arlw.png) no-repeat 14px 12px;
	background-size: 10px 10px;
}

.hmenu .menu ul.dd-menu li a:hover{
	background-color: #9D5B8B;
	padding: 5px 10px 5px 30px;
	opacity: 0.7;
}



/*.hmenu .menu ul li a img:hover,
.banner-gd a img:hover {
	animation: menu-move 1.0s ease-in-out infinite alternate;
	transform-origin: 50% 50%;
	opacity: 1;
}
	@keyframes menu-move {
	0% { transform: rotateZ(2deg) scale(1.0); }
	50% { transform: rotateZ(-2deg) scale(1.02); }
	100% { transform: rotateZ(2deg) scale(1.02); }
	}

.is-animation .header {
	width: 100%;
	height: 60px;
	padding: 5px 0;
	transition: .2s;
	position: fixed;
}

.is-animation .hmenu  {
	margin: 0 auto;
	padding: 0;
}
.is-animation .hmenu .menu ul{
	margin-top: 14px;
	transition: .1s;
}

.is-animation .hmenu .menu ul li{
	font-size: 95%;
	transition: .1s;
}

.is-animation .hmenu .menu ul.list-b {
    margin-top: 12px;
	transition: .1s;
}*/

#nav-toggle {
	position: absolute;
	right: 10px;
	top: 10px;
}
#nav-toggle {
	cursor: pointer;
	margin-left: 20px;
	z-index: 1050;
}

#nav-toggle img{
	width: 40px;
	height: 40px;
}

.drawer-toggle {
	cursor: pointer;
}

#nav-toggle span, #nav-toggle span:before, #nav-toggle span:after {
	cursor: pointer;
	border-radius: 1px;
	-moz-border-radius: 1px;
	-webkit-border-radius: 1px;
	-o-border-radius: 1px;
	height: 5px;
	width: 35px;
	background: #56AD34;
	/*position: absolute;*/
	/*display: block;*/
	content: '';
}
#nav-toggle span:before {
	top: -10px;
}
#nav-toggle span:after {
	bottom: -10px;
}
#nav-toggle span, #nav-toggle span:before, #nav-toggle span:after {
	transition: all 500ms ease-in-out;
	-webkit-transition: all 500ms ease-in-out;
	-moz-transition: all 500ms ease-in-out;
	-o-transition: all 500ms ease-in-out;
}
#nav-toggle.active span {
	background-color: transparent;
}
#nav-toggle.active span:before, #nav-toggle.active span:after {
	top: 0;
}
#nav-toggle.active span:before {
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
}
#nav-toggle.active span:after {
	transform: translateY(-10px) rotate(-45deg);
	-webkit-transform: translateY(-10px) rotate(-45deg);
	-ms-transform: translateY(-10px) rotate(-45deg);
	top: 10px;
}
#nav-toggle span.pc {
	background: none;
}

#top-slide {
	margin: 0 auto 10px;
	width: 82%;
	height: auto;
	position: relative;
}

#top-slide img {
	width: 100%;
	height: auto;
}

#top-slide .cover {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}


/* ==========================================================================

smenu

========================================================================== */

.drawer--right .drawer-nav {
    right: -16.25rem;
    right: -300px;
}

.drawer-nav {
	width: 300px;
	font-size: 95%;
}

.smenu {
	background-color: #9D5B8B;
	/*background-color: #56AD34;
	margin-top: -1px;*/
	padding: 0 15px;
}

.smenu ul {
	list-style: none;
	padding: 0;
}

.smenu ul li {
	color: #FFF;
	display: block;
	border-bottom: 1px dotted rgba(255, 255, 255, 0.5);
	transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	padding-left: 0;
	position: relative;
	padding: 10px 0 10px 5px;
}

/*.smenu ul li:last-child {
	border: none;
}*/

.smenu ul li a {
	color: #fff;
	display: block;
	
	transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	padding-left: 0;
	position: relative;

}

.smenu ul li img{
	height: 30px;
	width: auto;
	margin-right: 15px;
}

.smenu ul li ul li{
	margin-left: 45px;
}

.smenu ul li ul li:last-child {
	border:none;
	padding-bottom: 5px;
}

.smenu ul li ul li:first-child {
	border-top: 1px dotted rgba(255, 255, 255, 0.5);
	border-bottom: 1px dotted rgba(255, 255, 255, 0.5);
	margin-top: 5px
}

.smenu ul li ul li.nolink {
	background: url(../img/lh_arlw.png) no-repeat left 17px;
	padding-left: 15px;
	background-size: 10px 10px;
}

.smenu ul li ul li a{
	background: url(../img/lh_arlw.png) no-repeat left 8px;
	padding-left: 15px;
	background-size: 10px 10px;
}

.smenu ul li a.none {
	background: none;	
}

.smenu ul li a:hover, .smenu ul li a:focus {
	text-decoration: none;
	color: rgba(255, 255, 255, 1);
}

.indicator {
	position: absolute;
	right: 0 !important;
}

/* ==========================================================================

Main

========================================================================== */


h1 {
	margin-bottom: 20px;
	text-align: center;
}

h2 {
	padding-bottom: 5px;
	margin-bottom: 30px;
	background: url(../img/h2_line.png) no-repeat bottom left;
	color: #06477A;
	font-size: 140%;
	font-weight: 400;
}

h2 img {
	height: 36px;
	width: auto;
	margin: 0 17px 5px 7px;
}

/*h2:before,
h2:after {
  content: '';
  display: inline-block;
  background-size: contain;
  vertical-align: middle;
}

h2:before { margin-right: 25px;} 
h2:after { margin-left: 25px;}
*/


.midasi {
	margin-top: 0;
	line-height: 1.4;
}

img.op {
	opacity: 0.8;
}

.btn-l {
	height: 60px;
	line-height: 60px;
	color: #fff;
	font-size: 120%;
	padding-left: 30px; 
	padding-right: 30px; 
	text-align: center;
	display: inline-block;
	border-radius: 5px;
	background-color: #00B2B2
}

.btn-s {
	width: 140px;
	height: 34px;
	line-height: 34px;
	color: #fff;
	font-size: 15px;
	padding-right: 22px; 
	text-align: center;
	display: block;
}

.btn-s:hover,
.btn-l:hover {
	color: #fff;
	opacity: 0.7;
}

.link-box {
	width: 90%;
	margin: 0 auto;
}

.link-box ul {
	margin: 0;
	padding: 0;
	overflow: hidden;
}

.link-box ul li {
	margin: 0 20px 0 0;
	display: inline-block;
}

footer {
	/*background-color: #f1f1f1;*/
	padding-top: 20px;
	background: #f1f1f1 url(../img/bg.png) repeat left top;
	position: absolute;
    bottom: 0;
	width: 100%;
}

.footer-bg {
	background: url(../img/footer_bg.jpg) no-repeat bottom center;
	background-size: cover;
	padding-top:30px;
}

.fmenu {
	margin: 0 auto;
	padding: 0;
	width: 90%;
	box-sizing: border-box;
}

.fmenu ul li{
	/*background: url(../img/flh01.png) no-repeat 3px 3px;*/
	padding-left: 25px;
	margin-bottom: 10px;
	list-style: none;
}

.fmenu ul li ul {
	margin: 10px 0 0 -10px;
} 

.fmenu ul li ul li{
	/*background: url(../img/flh02.png) no-repeat 3px 3px;*/
	margin-bottom: 10px;
} 

.fmenu-t {
	margin: 0;
	padding: 0 0 20px;
	overflow: hidden;
	display: flex;
}

.fmenu-t ul {
	display: inline-block;
	padding: 0 0 0 5px;
	text-align: left;
	width: 20%;
	box-sizing: border-box;
	padding: 0 0 0 5px;
	float: left;
	border-left: 1px dashed #ccc;
}

.fmenu-t ul:first-child {
	border: none;
}

.fmenu-t ul li {
	clear: both;
	display: inline-block;
	width: 100%;
	font-size: 95%;
}



.fmenu ul li.last {
}

.fmenu-t ul li ul {
	width: 100%;
	border: none;
	padding: 0;
}

.fmenu-b {
	width: 100%;
	clear: both;
	margin: 0;
	padding: 0;
}

.fmenu-b ul {
	margin: 20px 0;
	padding: 0;
	overflow: hidden;
}

.fmenu-b ul li {
	float: left;
	margin-right: 20px;
	list-style: none;
}

.fmenu-t ul li a,
.fmenu-b ul li a {
	/*color: #fff;*/
}

.fmenu-t ul li a:hover,
.fmenu-b ul li a:hover {
	opacity: 0.7;
}


.finfo {
	padding: 30px 0 10px;
	width: 90%;
	margin: 0 auto;
}

.fname {
	font-size: 18px;
}

.finfo dl dt{
	float: left;
	width: 80px;
	height: 40px;
	text-align: center;
	border: 1px solid #fff;
	letter-spacing: 0.5em;
	display: block;
	padding-top: 8px;
	text-indent: 0.5em;
	font-weight: normal;
}

.finfo dl dd{
	margin-left: 90px;
}

.flink a {color: #fff; text-decoration:underline;}
.flink a:hover {color: #fff; text-decoration:none;}


.foot-box {
	display: block;
	overflow: hidden;
	width: 86%;
	margin: 0 auto;
}

.flink-box {
	float: left;
}

.bbl {
	border-right: 1px dotted #ccc;
	padding-right: 20px;
}

.flink-box a {
	vertical-align: top;
	margin-right: 20px;
	
}

.flink-box a {
	font-size: 80%;
	padding-left: 15px;
	background: url(../img/lh_arl.png) no-repeat left 5px;
	padding-bottom: 2px;
	background-size: 10px 10px;
}

.flink-box a img{
	height: 60px;
	width: auto;
}

.fbr-box {
	float: right;
}

.fbr-box p {
	display: inline-block;
	margin-left: 15px;
}

.fbr-box img {
	height: 36px;
	width: auto;
}

.copyright {
	letter-spacing: 1.2;
	font-size: 75%;
	letter-spacing: 0.1em;
	margin: 5px auto 0;
	/**/border-top: 1px solid #ccc;
	padding-top: 8px;
	padding-bottom: 8px;
	padding-left: 7%;
	/*text-align: center;
	background-color: #9D5B8B;
	color: #fff;*/
	width: 100%;
}

#pagetop {
	width: 70px;
	height: 100px;
	position: fixed;
	right: 15px;
	bottom: 0;
	z-index: 990;
	text-align: center;
	font-size: 65%;
	font-weight: 600;
	letter-spacing: 0.1rem;
}

#pagetop img{
	margin-bottom: 5px;
	width: 40px;
	height: auto;
}

/* ==========================================================================
top
========================================================================== */


h3.h3-top {
	font-size: 110%;
	/*color: #56AD34;*/
	text-transform: uppercase;
	margin-bottom: 15px;
}

.m320 {
	max-width: 320px;
}

.ab-wrap,
.dl-list {
	padding-left: 30px;
	padding-right: 30px;
}

.dl-list dl {
	border-bottom: 1px dotted #ccc;
	padding-bottom: 5px;
	margin-bottom: 10px;
	font-size: 95%;
	overflow: hidden;
}

.dl-list dl.topline {
	border-top: 1px dotted #ccc;
	padding-top: 10px;
}

.dl-list dl dt{
	float: left;
	width: 40%;
	font-weight: normal;
}

.dl-list dl dd{
	margin-left: 40%;
}

.dl-list dl dd ul {
	padding-left: 0;
	margin-bottom: 0;
}

.dl-list dl dd ul li {
	display: block;
	list-style: none;
}

.dl-list dl dd a{
	padding-left: 20px;
	background: url(../img/lh.png) no-repeat 5px 10px;
	background-size: 5px 5px;
	display: inline-block;
}

.cat {
	color: #fff;
	display: inline-block;
	margin-left: 15px;
	padding: 2px 10px;
	font-size: 85%;
	line-height: 1.42;
}

.cat-green { background-color: #00691A;}
.cat-lgreen { background-color: #52AF29;}
.cat-blue { background-color: #0084B4;}
.cat-yellow { background-color: #FFBF00;}
.cat-rs { background-color: #B1632A;}
.cat-ks { background-color: #6F3310;}


.new{
	color: #FF0F2B;
	margin-left: 10px;
}


.sien-bg{ background-color: #FAEBD7;}
.en-bg	{ background-color: #D6E9CA;}
.gd-bg {background-color: #ECF6F6;}
.contact-bg {background-color: #FBFAF5;}


.il {
	position: absolute;
}



.move01{
	animation: move01 3.0s ease-in-out infinite alternate;
	transform-origin: 50% 50%;
	margin: 1rem 0 !important;
}
	@keyframes move01 {
	0% { transform: rotateZ(15deg) scale(1.0); }
	50% { transform: rotateZ(-15deg) scale(1.0); }
	100% { transform: rotateZ(15deg) scale(1.0); }
	}

.move02{
	animation: move02 5.0s ease-in-out infinite alternate;
	transform-origin: 50% 50%;
	margin: 1rem 0 !important;
}
	@keyframes move02 {
	0% { transform:translate3d(0,0.5vw,0); }
	50% { transform:translate3d(0,-1vw,0); }
	100% { transform:translate3d(0,0.5vw,0); }
	}
	
.move03.active{
	animation: move03 1.1s linear 0s 1;
}

@keyframes move03 {
  0%   { transform: scale(0.8, 1.4) translate(0%, -50%); }
  10%  { transform: scale(0.8, 1.4) translate(0%, -15%); }
  20%  { transform: scale(1.4, 0.6) translate(0%, 30%); }
  30%  { transform: scale(0.9, 1.1) translate(0%, -10%); }
  40%  { transform: scale(0.95, 1.2) translate(0%, -30%); }
  50%  { transform: scale(0.95, 1.2) translate(0%, -10%); }
  60%  { transform: scale(1.1, 0.9) translate(0%, 5%); }
  70%  { transform: scale(1.0, 1.0) translate(0%, 0%); }
  100% { transform: scale(1.0, 1.0) translate(0%, 0%); }
}

.move04 {visibility: hidden;}
.move04.active{
	visibility: visible;
	animation: move04 1.5s linear 0s 1;
}

@keyframes move04 {
 	 0% { transform: translateX(50px); opacity: 0;}
     100% { transform: translateX(0); opacity:1;}
    }
}


/* ==========================================================================
second
========================================================================== */


.line-top {
	border-top: 1px solid #ccc;
	padding-top: 40px;
}

.sv-row {
	margin-left: -40px;
	margin-right: -40px;	
}

.text-box {
	margin-bottom: 50px;
}



/* ==========================================================================

tr

========================================================================== */

.h3-tr {
	background-color: #f1f1f1;
	padding: 10px 15px;
	box-sizing: border-box;
	font-size: 127%;
	margin-bottom: 30px;
	color: #9D5B8B;
	background: #f1f1f1 url(../img/bg.png) repeat top left;
}

#tr-slide {
	border: 1px solid #ccc;
}

#tr-slide img {
	width: 100%;
	height:auto;
} 



.tr-menu dl.top-line {
	border-top: 1px dotted #ccc;
	padding-top: 10px;
}

.tr-menu dl {
	border-bottom: 1px dotted #ccc;
	padding-bottom: 10px;
	margin-bottom: 10px;
	overflow: hidden;
	font-size: 95%;
}

.tr-menu dl dt {
	float: left;
	font-weight: normal;
	width: 80% ;
}

.tr-menu dl dt a {
	padding-left: 20px;
	background: url(../img/lh_ars.png) no-repeat 1px 6px;
	display: inline-block;
	background-size: 12px 12px;
}

.tr-menu dl dt.here a,
.tr-menu dl dt a:hover {
	background: url(../img/lh_ars_here.png) no-repeat 1px 6px;
	background-size: 12px 12px;
	color: #9D5B8B;
}

.tr-menu dl dd {
	float: right;
	width: 20%;
	text-align: right;
	margin-bottom: 0;
}

.tr-menu dl dd span{
	text-align: right;
	font-size: 90%;
}


.video-box {
	/*width: 100%;*/
	position: relative;
	height: 0;
	padding-bottom: 56.25%;
	margin-bottom:40px;
}

#video {
	width: 100%;
}

.video-box iframe{
	position: absolute;
	width: 100%;
	height: 100%;
}


/* ==========================================================================

digest

========================================================================== */

.dg-menu dl.top-line {
	border-top: 1px dotted #ccc;
	padding-top: 10px;
}

.dg-menu dl {
	border-bottom: 1px dotted #ccc;
	padding-bottom: 10px;
	margin-bottom: 10px;
	overflow: hidden;
	font-size: 95%;
}

.dg-menu dl dt {
	float: left;
	font-weight: normal;
	width: 80% ;
}

.dg-menu dl dt a {
	padding-left: 20px;
	background: url(../img/lh_ars.png) no-repeat 1px 8px;
	display: inline-block;
	background-size: 12px 12px;
}

.dg-menu dl dt.here a,
.dg-menu dl dt a:hover {
	background: url(../img/lh_ars_here.png) no-repeat 1px 8px;
	background-size: 12px 12px;
	color: #9D5B8B;
}

.dg-menu dl dd {
	float: right;
	width: 20%;
	text-align: right;
	margin-bottom: 0;
}

.dg-menu dl dd span{
	text-align: right;
	font-size: 90%;
}


/* ==========================================================================

docment

========================================================================== */


h3.h3-doc {
	font-size: 110%;
	/*color: #56AD34;*/
	text-transform: uppercase;
	margin-bottom: 10px;
	line-height: 1.5;
	padding-right: 30px;
	padding-left: 30px;
}

.doc-list {
	padding-right: 30px;
	padding-left: 30px;
}

.doc-list ul {
	border-top: 1px dotted #ccc;
	border-bottom: 1px dotted #ccc;
	padding: 10px 0 5px;
	margin-bottom: 60px;
	font-size: 95%;
	overflow: hidden;
}

.doc-list ul li {
	list-style: none;
	margin-bottom: 5px;
}

.doc-list ul li a{
	padding-left: 20px;
	background: url(../img/lh.png) no-repeat 5px 10px;
	background-size: 5px 5px;
	display: inline-block;
}



/* ==========================================================================
Waypoints
========================================================================== */
.wp-fiu1, .wp-fiu2, .wp-fiu3, .wp-fiu4, .wp-fiu5, .wp-fiu6, .wp-fiu7, .wp-fiu8, .wp-fiu9, .wp-fiu10,
.wp-fid1, .wp-fid2, .wp-fid3, .wp-fid4, .wp-fid5, .wp-fid6, .wp-fid7, .wp-fid8, .wp-fid9, .wp-fid10,
.wp-fil1, .wp-fil2, .wp-fil3, .wp-fil4, .wp-fil5, .wp-fil6, .wp-fil7, .wp-fil8, .wp-fil9, .wp-fil10,
.wp-fir1, .wp-fir2, .wp-fir3, .wp-fir4, .wp-fir5, .wp-fir6, .wp-fir7, .wp-fir8, .wp-fir9, .wp-fir10,
.wp-fiu-gd,
.wp-fiu-contact,
.wp-fiu-footer
 {
	visibility: hidden;
}
.bounceInLeft, .bounceInRight, .fadeInUp, .fadeInUpDelay, .fadeInDown, .fadeInUpD, .fadeInLeft, .fadeInRight {
	visibility: visible;
}
.delay-05s {
	animation-delay: 0.5s;
	-webkit-animation-delay: 0.5s;
}
.delay-1s {
	animation-delay: 1s;
	-webkit-animation-delay: 1s;
}
.delay-025s {
	animation-delay: 0.25s;
	-webkit-animation-delay: 0.25s;
}
.delay-075s {
	animation-delay: 0.75s;
	-webkit-animation-delay: 0.75s;
}
.delay-125s {
	animation-delay: 1.25s;
	-webkit-animation-delay: 1.25s;
}
.delay-15s {
	animation-delay: 1.5s;
	-webkit-animation-delay: 1.5s;
}
.delay-175s {
	animation-delay: 1.75s;
	-webkit-animation-delay: 1.75s;
}
.delay-2s {
	animation-delay: 2s;
	-webkit-animation-delay: 2s;
}

.mgnt0 { margin-top: 0; }
.mgnt10 { margin-top: 10px; }
.mgnt15 { margin-top: 15px; }
.mgnt20 { margin-top: 20px; }
.mgnt30 { margin-top: 30px; }
.mgnt40 { margin-top: 40px; }
.mgnt50 { margin-top: 50px; }
.mgnt70 { margin-top: 70px; }
.mgnt80 { margin-top: 80px; }
.mgnr20 { margin-right: 20px; }
.mgnl15 { margin-left: 15px; }
.mgnb15 { margin-bottom: 15px; }
.mgnb20 { margin-bottom: 20px; }
.mgnb30 { margin-bottom: 30px; }
.mgnb40 { margin-bottom: 40px; }
.mgnb50 { margin-bottom: 50px; }
.mgnb80 { margin-bottom: 80px; }

/* ==========================================================================
news
========================================================================== */
.line {
    border-bottom: 1px dotted #d7d7d7;
	padding-bottom: 50px;
    margin-bottom: 50px;
}

.news-stitle {
	display: inline-block;
	margin-top:20px;
	font-weight: bold;
}


.wrap-flex {
	display: flex;
	flex-flow: row wrap;
	padding-right: 0;
	padding-left: 0;
}
.wrap-main {
	order: 2;
}
.wrap-side {
	order: 1;
}



.post-password-form {
	padding: 100px 0;
}

.post-password-form p {
	text-align: center;
	padding-bottom: 50px;
}


.fixed {
      overflow: hidden;
      position: fixed;
      height: 100%;
      width: 100%;
    }

.fs85 { font-size: 85%; }
.fs90 { font-size: 90%; }
.fs95 { font-size: 95%; }


.h3-tr select {
        padding: 5px 30px 10px 15px;
}

.iframe-wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  overflow:auto; 
  margin-left: 15px;
  margin-right: 15px;
  -webkit-overflow-scrolling:touch;
  border:2px solid #ccc; 
}
.iframe-wrap iframe {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    border:none;
    display:block;
}
