@charset "UTF-8";

@import url(base.css);

html, body {
/*	overflow: auto;*/
	height: 100%;
	-webkit-overflow-scrolling : touch;}

html {
  scroll-padding-top: 16vh; /* 固定ヘッダの高さ分 */
}

img {
	display: inline-block;
	max-width:100%;
	max-height: 100%;}

p {
	font-size: 3.5vw;}

.pc {
	display: none !important;}

.img100 {
	width: 100%;
	height: auto;}
.img70 {
	width: 70%;
	height: auto;}
.img50 {
	width: 50%;
	height: auto;}

/*-------------------------------------------------
	++ OUTER
-------------------------------------------------*/
#container {
	margin:0 auto;
	text-align: center;
	position:relative;
	min-width:100%;}
.cInner,
.cInner2 {
	display:block;
	clear:both;
	margin:0 auto;
	text-align: left;
	position:relative;
	padding:0 2vw;}

/*-------------------------------------------------
	++ BANNER
-------------------------------------------------*/
.Top_Banner {
	display: none;}

/*-------------------------------------------------
	++ HEADER
-------------------------------------------------*/
#header {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #07913b;
    background-color: #FFFFFF;}
.header_contact {height:8vh !important;}

#header_ny {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #d80000;
background:#fffcef url(../../images/2022/newyear/bg.jpg) left top repeat;}

#header_vt {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #803f00;
background:#fffcef url(../../images/2022/Valentine/bg.jpg) left top repeat;}

#header_hm {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #ff3da1;
background:#fffcef url(../../images/2022/hinamatsuri/bg.jpg) left top repeat;}


#header_sp {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #d83567;
background:#fffcef url(../../images/2022/spring/bg.jpg) left top repeat;}


#header_bb {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #c60000;
background:#fffcef url(../../images/2022/baseball/bg.jpg) left top repeat;}

#header_af {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #ffbe4c;
background:#fffcef url(../../images/2022/aprilfool/bg.jpg) left top repeat;}

#header_cj {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #f0001e;
background:#fffcef url(../../images/2022/jets/bg.jpg) left top repeat;}

#header_ra {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #dc69f4;
background:#fffcef url(../../images/2022/rain/bg.jpg) left top repeat;}

#header_se {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #0090ff;
background:#fffcef url(../../images/2022/sea/bg.jpg) left top repeat;}

#header_cp {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #93d225;
background:#fffcef url(../../images/2022/camp/bg.jpg) left top repeat;}

#header_mt {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #c6926b;
background:#fffcef url(../../images/2022/mountain/bg.jpg) left top repeat;}

#header_at01 {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #eaab28;
background:#fffcef url(../../images/2022/autumn01/bg.jpg) left top repeat;}

#header_at02 {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #c85000;
background:#fffcef url(../../images/2022/autumn02/bg.jpg) left top repeat;}

#header_cm {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #33488d;
background:#fffcef url(../../images/2022/climber/bg.jpg) left top repeat;}

#header_fb {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #8cc419;
background:#fffcef url(../../images/2022/soccer/bg.jpg) left top repeat;}

#header_hw {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #d07100;
background:#fffcef url(../../images/2022/halloween/bg.jpg) left top repeat;}

#header_tf {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #758aae;
background:#fffcef url(../../images/2022/typhoon/bg.jpg) left top repeat;}

#header_wt {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #5a8ef2;
background:#fffcef url(../../images/2022/winter/bg.jpg) left top repeat;}

#header_xm {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #dd0000;
background:#fffcef url(../../images/2022/xmas/bg.jpg) left top repeat;}

#header_20 {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #ff3c00;
background:#fffcef url(../../images/2022/seijin/bg.jpg) left top repeat;}

#header_sb {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #d2b54f;
background:#fffcef url(../../images/2022/setsubun/bg.jpg) left top repeat;}

#header_cd {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #4bbf00;
background:#fffcef url(../../images/2022/kodomo/bg.jpg) left top repeat;}

#header_op {
	position:fixed;
	top:0;
	left:0;
	z-index:9998;
	width:100%;
	height: 16vh;
	-webkit-overflow-scrolling : touch;
	border-bottom: 8px solid #da0000;
background:#fffcef url(../../images/2022/olympic/bg.jpg) left top repeat;}


#headerContent {
	padding:5px 0;}
#headerContent #logo {
	width: 70%;
	float:left;
margin-bottom: -3vw;}
#headerContent div#logo {
	width: 70%;
	float:left;
	margin-bottom: -1vw;}
#headerContent #snsArea {
	float:left;}
#headerContent #snsArea ul {
	display: flex;
	flex-wrap: wrap;}
#headerContent #snsArea li {
	width: 10%;
	text-align: center;
	margin: 0 4px;
	display: inline-block;
	vertical-align: middle;}
#headerContent #snsArea li.tel {
	width: 39%;
	margin-left: -1vw;}
#headerContent #snsArea li.Partner {
	width: 20%;}

#headerContent #logo2 {
	width: 50%;
	float:left;
	margin-bottom: -3vw;}
#headerContent #snsArea2 {
	width: 30%;
	float:right;
    margin-top: 5px;}
#headerContent #snsArea2 ul {
	display: flex;
	flex-wrap: wrap;}
#headerContent #snsArea2 li {
	text-align: center;
	margin: 0 4px;
	display: inline-block;
	vertical-align: middle;}

#menu {
	position:absolute;
	top:0;
	right:0;}
#menu nav {
    display: flex;}
#menu nav ul {
    display: none;}
#menu nav ul.open {
    display: block;
    position: fixed;
    left: 0;
    top: 26vw;
    text-align: left;
    width: 100%;}
#menu nav li {
    background-color: #07913b;
    border-bottom-color: #fff;
    border-bottom-style: solid;
    border-bottom-width: 1px;
    margin-left: 0;
	text-align: center;}
#menu nav li a {
	color: #FFFFFF;
    display: block;
    font-size: 4vw;
    line-height: 1;
    padding: 1.1em 2.4em;}
#nav_toggle {
	position:absolute;
	top:2vw;
	right:3vw;
	display: block;
	width: 40px;
	height: 35px;
	margin: 0px;
	z-index: 100;}
#nav_toggle i {
	display: block;
	height: 5px;
	background: #07913b;
	position: absolute;
	width: 100%;
	left: 0;
	-webkit-transition: 0.5s ease-in-out;
	-moz-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;}
#nav_toggle i:nth-child(1) {
	top: 0;}
#nav_toggle i:nth-child(2) {
	top: 12px;}
#nav_toggle i:nth-child(3) {
	top: 25px;}
#nav_toggle.open i:nth-child(1) {
	top: 12px;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	transform: rotate(135deg);}
#nav_toggle.open i:nth-child(2) {
	width: 0;
	left: 50%;}
#nav_toggle.open i:nth-child(3) {
	top: 12px;
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	transform: rotate(-135deg);}

/*-------------------------------------------------
	++ TOP MAIN SLIDER
-------------------------------------------------*/
#main {
	padding-top:8px;
	margin-bottom: 5vw;}
.slider img {
	width:100%;
	height:auto;}
.slider li {
	position:relative;}

.slick-prev,
.slick-next,
.serviceListW .slick-prev,
.serviceListW .slick-next {
    position: absolute;
    top: 50%;
	left:50%;
    display: block;
    width: 34px;
    height: 48px;
	margin-top:-29px;
    padding: 0;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
	z-index: 999;}
.slick-prev {
    background: url(../../images/2021/arrowLG.png) center center no-repeat;
	margin-left:-60%;}
.slick-next {
    background: url(../../images/2021/arrowRG.png) center center no-repeat;
	margin-left:50%;}
.serviceListW .slick-prev {
    background: url(../../images/2021/arrowLW.png) center center no-repeat;
	margin-left:-60%;}
.serviceListW .slick-next {
    background: url(../../images/2021/arrowRW.png) center center no-repeat;
	margin-left:50%;}

.slick-dots {
    display: block;
    width: 100%;
    padding: 5px 0 8px 0;
    margin: 0;
    list-style: none;
    text-align: center;}
.slick-dots li {
    position: relative;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer;
	background-color: #07913b;
    border-radius: 10px;
    opacity:0.8;}
.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 10px;
    height: 10px;
    padding: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
	background-color: #e0e0e0;
    border-radius: 10px;}
.slick-dots li.slick-active {
	background-color:#07913b;}
.slick-dots li.slick-active button {
	background-color:#07913b;}

/*-------------------------------------------------
	++ CONTENT
-------------------------------------------------*/
#content {
	margin:5% auto 0 auto;
	text-align: center;
	position:relative;}

h2 {
	color: #5A5C57;
	font-size: 5.5vw;
	font-weight: bold;
	line-height: 1.5em;
	padding-bottom: 0.5em;
	text-align: center;}

h3 {
	color: #07913b;
	font-size: 5.5vw;
	font-weight: bold;
	line-height: 1.5em;
	padding: 5px 0 10px 0;}
h3.subTtlG {
	color: #07913b;
	font-size: 4.5vw;
	font-weight: bold;
	line-height: 1.8em;
	text-align: left;
	padding: 0px;}
h4 {
	color: #07913b;
	font-size: 4.5vw;
	font-weight: bold;
	line-height: 1.8em;
	text-align: left;
	padding-left: 10%;}
h4.addonListTtl {
	color: #07913b;
	font-size: 4.5vw;
	font-weight: bold;
	line-height: 1.8em;
	text-align: left;
	padding: 0px;}

/*#addon,
#addon2,
#service,
#service2,
#service3,
#smartdevice,
#news,
#CM,
#pamphlet {
   margin-top:-16vh;
   padding-top:16vh;}*/

#flexbox {
	display:flex; 
	flex-wrap: wrap;
	width: 100%;
	height:auto;
	padding:0px;
	margin: 0 0 10% 0;}

.linkG {
	width: 100%;
	display: block;
  	text-align: center;
	border: 1px solid #e6e6e6;
	background-color: #FFFFFF;
	border-radius: 10px;
	padding: 0;
	margin: 0 auto;
	line-height: 3em;}
.linkG2 {
    float: right;
    font-size: 3.5vw;
    font-weight: normal;
	display: inline-block;
  	text-align: center;
	border: 1px solid #e6e6e6;
	background-color: #FFFFFF;
	border-radius: 10px;
	padding: 0 3.5vw 0 3vw;
	margin: 0 auto;
	line-height: 2.5em;}
.linkG a,
.linkG2 a {display: block;}
.linkG span {
	position: relative;
	padding-left: 15px;}
.linkG2 span {
	position: relative;
	padding-left: 20px;}
.linkG span::before,
.linkG2 span::before {
	content: "";
  	position: absolute;
  	top: 50%;
  	left: 0;
  	width: 9px;
  	height: 9px;
  	border-top: 2px solid #079237;
  	border-right: 2px solid #079237;
  	transform: rotate(45deg);
  	margin-top: -5px;}

/* addon */
.addonList {
	width: 100%;
	padding:0;
	margin: 5% auto 0 auto;}
.addonList2 {
	width: 100%;
	padding:0;
	margin: 0 auto;}
.addonList li,
.addonList li.noline,
.addonList2 li {
	width: 48%;
	height: 65px;
	float:left;
	margin: 0 1% 2% 1%;
	border: 1px solid #e6e6e6;
	box-shadow: 3px 3px #e6e6e6;
	padding:0%;
    position: relative;}

.addonList li.yellow {
    padding: 0;
    background-color: #ffffb2;}
.addonList li.blue {
    padding: 0;
    background-color: #dfffff;}
.addonList li.pink {
    padding: 0;
    background-color: #ffedff;}

.addonList li:after {
	content: '';
  	position: absolute;
  	left: 0;
    right: 0;
  	bottom: 8%;
    text-align: center;
    margin: 0 auto;
    width: 10px;
    height: 10px;
    border-bottom: 3px solid #e6e6e6;
    border-right: 3px solid #e6e6e6;
    transform: rotate(45deg);}
.addonList li.noline:after {
    content: none;}
.addonList2 li.big {
	width: 96%;}
.addonList li img,
.addonList2 li img {
	display:block;}
.addonList a,
.addonList2 a {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	height: 100%;}

.inlineBox {
	width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
	margin: 0 auto;
	padding: 0;}
.inlineBox li {
    width: 49%;
	margin: 0 2% 2% 0;
	border: 1px solid #e6e6e6;
	box-shadow: 3px 3px #e6e6e6;
    padding: 5px;}
.inlineBox a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: center;
    height: 100%;}
.inlineBox li:nth-of-type(2n) {
    margin-right: 0;}
.inlineBox li img {
	width: 15%;}
.inlineBox li span {
    text-align: left;
    width: 83%;
    margin-left: 3%;
    font-size: 3vw;}
.inlineBox li.banner {
    padding: 0px;}
.inlineBox li.banner img {
    width: 100%;}

.inlineBox2 {
	width: 100%;
	margin: 0 auto 1.5% auto;
	padding: 0.5% 0;
	border-top: 1px #898989 solid;
    border-bottom: 1px #898989 solid;}
.inlineBox2 li {
	width: 9%;
	margin: 0.5% 1%;
	display: inline-block;}
.inlineBox2 li img {
	width: 100%;
	vertical-align: middle;}

.addonOther {
	width: 100%;
  	margin: 1% auto;}
.addonOther .addonTtl {
	background-color: #07913b;
  	color: #ffffff;
  	font-size: 4.5vw;
  	font-weight: bold;
  	padding: 10px 10% 10px 3%;
	margin-bottom: 1%;
  	text-align: center;
  	position: relative;
  	z-index: +1;
  	cursor: pointer;
  	transition-duration: 0.2s;}
.addonOther .addonTtl:hover {
  	opacity: .9;}
.addonOther .addonTtl .i_box {
  	display: flex;
  	justify-content: center;
  	align-items: center;
  	position: absolute;
  	top: 50%;
  	right: 1%;
  	width: 40px;
  	height: 40px;
  	margin-top: -20px;
  	box-sizing: border-box;
  	-webkit-transform: rotate(45deg);
  	transform: rotate(45deg);
  	transform-origin: center center;
  	transition-duration: 0.2s;}
.addonOther .addonTtl .i_box .one_i {
  	display: block;
  	width: 18px;
  	height: 18px;
  	-webkit-transform: rotate(45deg);
  	transform: rotate(45deg);
  	transform-origin: center center;
  	transition-duration: 0.2s;
  	position: relative;}
.addonOther .addonTtl.stay.open .i_box {
  	-webkit-transform: rotate(-360deg);
  	transform: rotate(-360deg);}
.addonOther .addonTtl .i_box .one_i:before,
.addonOther .addonTtl .i_box .one_i:after {
  	display: flex;
  	content: '';
  	background-color: #fff;
  	border-radius: 10px;
  	width: 18px;
  	height: 4px;
  	position: absolute;
  	top: 7px;
  	left: 0;
  	-webkit-transform: rotate(0deg);
  	transform: rotate(0deg);
  	transform-origin: center center;}
.addonOther .addonTtl .i_box .one_i:before {
  	width: 4px;
  	height: 18px;
  	top: 0;
  	left: 7px;}
.addonOther .addonTtl.stay.open .i_box .one_i:before {
  	content: none;}
.addonOther .addonTtl.stay.open .i_box .one_i:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);}
.FlowTxt {
	margin : 0 auto;
	width : 100%;
	text-align : center;
	overflow : hidden;
	display: block;}
.FlowTxt p{
	margin:0;
	display : inline-block;
	padding-left: 100%;
	white-space : nowrap;
	line-height : 1em;
	animation : scrollFlowTxt 20s linear infinite;}
@keyframes scrollFlowTxt{
	0% { transform: translateX(0)}
	100% { transform: translateX(-100%)}
}

.addonOther .addonInner.stay.open {
    display: none;
    padding: 0;
    box-sizing: border-box;}
.addonOther .addonInner .box_one {
    height: auto;}
.addonOther .addonInner p.txt_a_ac {
    margin: 0;}

.bgBlue {background-color: #3e87c9 !important;}
.bgBlue2 {background-color: #00A1E2 !important;}
.bgBlue3 {background-color: #6ABBE8 !important;}
.bgPurple {background-color: #3F2BBF !important;}
.bgPurple2 {background-color: #4a154b !important;}
.bgRed {background-color: #E53B48 !important;}

/* service */
.serviceBoxG {
	display: block;
	width: 100%;
	background-color: #e0eee1;
	margin: 0;
	padding: 4% 0;}
.serviceBoxW {
	display: block;
	width: 100%;
	background-color: #FFFFFF;
	margin: 0;
	padding: 4% 0;}

.serviceList,
.serviceListW {
	width: 85%;
	padding:0;
	margin: 2% auto;}
.serviceList li,
.serviceListW li {
	float:left;
	margin: 0 2vw;
	position: relative;}
.service_text {
    margin: 5px 0 0 0;
	color: #5A5C57;
	line-height: 1.3em;
	text-align: center;}
.serviceList li img,
.serviceListW li img {
	display:block;}
.serviceList a,
.serviceListW a {
	text-align: center;
	height: 70%;}

.ribbonRed {  
	display: inline-block;
  	position: absolute;
  	top: 0;
  	left: 0;
  	margin: 0;
  	padding: 10px 0;
  	z-index: 2;
  	width: 60px;
  	text-align: center;
  	font-size: 17px;
  	color: #FFFFFF;
  	background: #f60001;}
.ribbonRed:after {
	content: '';
  	position: absolute;
  	left: 0;
  	top: 100%;
  	height: 0;
  	width: 0;
  	border-left: 30px solid #f60001;
  	border-right: 30px solid #f60001;
  	border-bottom: 10px solid transparent;}

.otherBox {
	display:block;
	clear:both;
	margin:4vw auto 7vw auto;
	text-align: center;
	position:relative;
	padding:0 3vw;}

/* smartdevice */
.smartdeviceList {
	width: 85%;
	padding:0;
	margin: 2% auto;}
.smartdeviceList li {
	float:left;
	margin: 0 2vw;}
.smartdevice_text {
    margin: 5px 0 0 0;
	color: #5A5C57;
	line-height: 1.3em;
	text-align: center;}
.smartdeviceList li img {
	display:block;}
.smartdeviceList a {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border: 1px solid #e6e6e6;
	padding:2vw;}

/* news */
.newsBox {
	display: block;
	width: 100%;
	background-color: #f2f2f2;
	margin: 5% 0;
	padding: 4% 0;}
.newsAll,.newsL { width: 100%; text-align: left; padding:0; margin: 2% 0 5% 0;}
.newsList {
	margin: 0 auto;}
.newsList li {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	padding-bottom: 0.8em;
    margin-bottom: 0.8em;
	text-align: left;
	border-bottom:1px #D0D0D0 dotted;}
.newsList .tag {
    background-color: #fe0000;
    color: #fff;
    display: inline-block;
    font-style: normal;
    margin-right: 0.8em;
    text-align: center;
    vertical-align: top;
    width: 4em;}
.newsList a {
    display: inline-block;
    vertical-align: top;
    width: 90%;}
.newsR { width: 100%; text-align: center; padding:0; margin: 0 0 5% 0;}
.newsBanner {
	background-color: #FFFFFF;
	width: 80%;
	height: 110px;
	display: block;
	margin: 0 auto 20px auto;}
.newsBanner:last-child {margin: 0 auto 0 auto;}
.newsBanner a { display: flex; align-items: center; justify-content: center; text-align: center; height: 100%;}

/* banner */
.bannerEXBox { display: flex; flex-direction: column;}
.bannerEX { width: 80%; border: 1px solid #e6e6e6; padding: 10px; margin:0 auto 3% auto;}
.bannerEX a { display: flex; align-items: center; justify-content: center; text-align: center; height: 100%;}

/* linkTxt */
.linkTxt { display: none;}

.listDisc,
.listDisc03 {
	padding: 0px;
	margin:0px;}
.listDisc02 {
	padding: 0px;
	margin:15px 0;}
.listDisc li,
.listDisc02 li {
	text-align: left;
	line-height: 1.8em;
	list-style-type:none;
	padding: 0 0 0 1.0em;
	text-indent: -1.0em;}
.listDisc03 li {
	text-align: left;
	line-height: 1.3em;
    font-size: 3vw;
	list-style-type:none;
	padding: 0 0 0.3em 1.0em;
	text-indent: -1.0em;}

/*-------------------------------------------------
	++ FOOTER
-------------------------------------------------*/
#footer{
    margin-top: 30px;
	padding: 10px 0 30px 0;
	background-color: #07913b;}
#footer .cInner {
	position:relative;
	color: #FFFFFF;
	text-align: center;}
#footer .contact {
	font-size:4.5vw;
	padding:3vw 0;
	color: #FFFFFF;}
#footer .contact span.tel {
	background-color: #FFFFFF;
	border-radius: 5px;
	display: block;
	color:#07913b;
	padding: 1vw 0;
	margin: 3vw 0;}
#footer .contact a:link,#footer .contact a:visited {color:#07913b;text-decoration:none;}
#footer .contact a:hover,#footer .contact a:active {color:#07913b;text-decoration:none;}
#footer .copyright {
	font-size:3.1vw;}

#pageTop {
	position: fixed;
	bottom: 0;
  	right: 0;
  	width: 15%;
	z-index:9998;}
#pageTop img {
	display:block;}


/*-------------------------------------------------
  pamphlet
-------------------------------------------------*/
.CMList {
	width: 100%;
	padding:0;
	margin: 0 auto 10% auto;}
.CMList li {
	width: 100%;
	display: block;
	margin: 0 auto;
	vertical-align: top;}
.CM_text {
    margin: 5px 0 3% 0;
	color: #5A5C57;
	line-height: 1.3em;
	text-align: center;}
.CMList li img {
	display:block;
	margin: 0 auto;
	text-align: center;}

.pamphlet_table {
	width: 100%;
	margin:5px auto 10px auto;
	line-height:1.6em;}
.pamphlet_table tr {
	border-bottom:1px #D0D0D0 dotted;}
.pamphlet_table th {
	float: left;
	display: inline-block;
	width: 87%;
	font-size:108%;
	text-align:left;
	font-weight: bold;
	padding:3% 1% 0 1%;
	vertical-align:middle;
	background-color: #FFFFFF;
	border-bottom: none;
	margin-bottom: 5px;	}
.pamphlet_table th.icon_pamphlet {
	float: left;
	display: inline-block;
	width: 13%;
	text-align: center;}
.pamphlet_table td {
	float: left;
	display: block;
	width: 50%;
	font-size:93%;
	text-align:center;
	padding:0;
	vertical-align:middle;}
.pdf img {
	width: 30%;}

/*-------------------------------------------------
  corporate
-------------------------------------------------*/
.Google_EntierPrise_Day {
	width: 100%;
    margin: 10px auto 8% auto;
    padding: 0;
    text-align: center;}

.corporatebox {
	display:flex; 
	flex-wrap: wrap;
	width: 100%;
	height:auto;
	padding:0px;
	margin: 6% 0 5% 0;}
.partnerImg { width: 30%; text-align: left; padding:0; margin: 0 3% 0 0;}
.partnerTxt { width: 67%; text-align: left; padding:0; margin: 0 0 5% 0;}

.corporate_table,
.corporate_table2 {
	margin:5px auto 5% auto;
	line-height:1.6em;}
.corporate_table th,
.corporate_table2 th {
	width: 100%;
	font-size: 4vw;
	display: block;
	padding:5px 3%;
	color: #11770E;
	background-color: #F2FFF7;
	border-bottom: none;}
.corporate_table td,
.corporate_table2 td {
	width: 100%;
	font-size: 4vw;
	line-height: 1.5em;
	display: block;
	padding:15px 3%;
	border-bottom:none;}
.corporate_table a,
.corporate_table2 a {
	color: #11770E;}
.mgRB5 {
     margin: 0 5px 0 0px;}

.corporateBox2 {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 4% 0 10% 0;}
.corporateBox2Img {
    width: 48%;
    margin: 0 1%;}

.corporatebox {
	display:flex; 
	flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
	width: 100%;
	height:auto;
	padding:0px;
	margin: 3% 0 5% 0;}
.partnerImg { width: 30%; text-align: left; padding:0; margin: 0 5% 3% 5%;}
.partnerImg2 { width: 30%; text-align: left; padding:0; margin: 0 4% 0 0;}
.partnerTxt { width: 60%; text-align: left; padding:0; margin: 0;}
.partnerTxt2 { width: 100%; text-align: left; padding:0 0 0.8em 0; margin: 2em 0 0 0;}


/*-------------------------------------------------
  contact
-------------------------------------------------*/
#formMain {
	width: 100%;
	
	margin: 0;
    background: url(../../images/2021/contact_bg.jpg) center center no-repeat;
    background-size: cover;
    padding-top: 20px;
    padding-bottom: 0px;
    position: relative;}
#formMain .formInner {
	width: 100%;
	margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-end;}
.formTtl {
    width: 100%;
    font-size: 5.5vw;
    line-height: 1.3em;
    font-weight: bold;
    text-align: left;
    color: #FFFFFF;
    padding: 0 2% 4% 3%;}
.formTtl span {
    display: block;
    font-size: 3.8vw;
    padding-top: 1em;
    line-height: 1.3em;}
.formTtl em {
    display: block;
    font-size: 3.5vw;
    padding-top: 1.5em;
    line-height: 1.3em;
    font-weight: normal;}
.formTtl a:link,.formTtl a:visited {color:#ffffff;text-decoration:underline;}
.formTtl a:hover,.formTtl a:active {color:#ffffff;text-decoration:none;}
.formImg {
    position: absolute;
    right: 3%;
    bottom: 0;
    width: 30%;
    display: flex;}
.formImg img {
    width: 100%;}

#form_table {
	margin:5px auto 10px auto;
	line-height:1.6em;}
#form_table th {
    display: inline-block;
	font-size:4vw;
	width:100%;
	background:#FFFFFF;
	color:#00923A;
	text-align:left;
	font-weight: bold;
	padding:0px;
	vertical-align:middle;}
#form_table th span {
    background-color: #ff0000;
    color: #fff;
    text-align: center;
    font-weight: normal;
    border-radius: 30px;
    margin-left: 0.5em;
    padding: 0 10px;
    font-size: 3.5vw;}
#form_table th em {
    color: #5A5C57;
    text-align: left;
    font-weight: normal;
    margin-left: 0.5em;
    padding: 0;
    font-size: 3.5vw;}
#form_table td {
    display: inline-block;
	font-size:4vw;
	width:100%;
	background:#FFFFFF;
	text-align:left;
	padding:0px;
    margin-bottom: 10px;
	vertical-align:middle;}

.txtGray::placeholder {
    color: #b2b2b2;}

.form_send {
	border:none;
    cursor: pointer;
    background-color: #ff8d00;
    border-radius: 50px;
    text-align: center;
    line-height: 3em;
    color: #FFFFFF;
    padding: 0px;
    width: 95%;
    margin: 20px 5px 10px 5px;
    font-size: 4.5vw;
    font-weight: bold;}
.form_reset {
	border:none;
	cursor:pointer;
	background-color:#B0B0B0;
	border-radius: 50px;
	text-align:center;
	line-height:2.8em;
	color:#FFFFFF;
	padding:0px;
	width:95%;
	margin:0px 5px 5px 5px;
	font-size:120%;}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus,select:focus{
	background-color: #fff;}

input[type=submit],
input[type=reset],
input[type=button] {
	border :none;
	-webkit-appearance : none;
	-webkit-tap-highlight-color : rgba(0,0,0,0);}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea,select{
	padding:10px;
	margin:10px 0 15px 0;
    border: 1px #b2b2b2 solid;
    border-radius: 5px;}

.form_tel {
	color:#FF6C00;
	font-size:5vw;
	font-weight:bold;}
.form_tel a:link,.form_tel a:visited {
	text-decoration: none;
	color: #FF6C00;}
.form_tel a:hover, .form_tel a:active {
	text-decoration: none;
	color: #FF6C00;}

.textbox01 { width: 85% !important;}
.textbox05 { width: 100%;}
.textbox06 { width: 100%;}

.formCenter {
    margin: 20px auto 0 auto;
    padding: 0;
    text-align: center;}

select {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;}
.select_wrapper {
    position: relative;}
.select_wrapper::after {
    content: "";
    position: absolute;
    top: 40%;
    right: 12px;
    border-right: 12px solid transparent;
    border-left: 12px solid transparent;
    border-top: 12px solid #00923A;
    border-bottom: 0;}

.formBox {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 10px;}
.formItem {
    width: 100%;
    font-size: 4vw;
    margin-bottom: 5px;}
.formItem2 {
    width: 100%;
    font-size: 4vw;}
.formothers {
    margin-left: 0px;}
.from_bgO {
    background-color: #ffe6c6;
    padding: 10px;
    margin: 10px 0;}

.formTxt a:link,.formTxt a:visited {color:#5A5C57;text-decoration:underline;}
.formTxt a:hover,.formTxt a:active {color:#5A5C57;text-decoration:none;}

.error {
    color: #FF0000;
    display: block;
    margin: -10px 0 15px 0;}

/*-------------------------------------------------
  privacy
-------------------------------------------------*/
.privacy_table, 
.privacy_table2  {
	margin:5px auto 10px auto;
	line-height:1.6em;}
.privacy_table th,
.privacy_table td {
	width: 100%;
	display: block;
	padding:15px 3%;
	border:none;}
.privacy_table th {
	width: 100%;
	display: block;
	padding:5px 3%;
	color: #11770E;
	text-align:left;
	background-color: #F2FFF7;}
.privacy_table td {
	width: 100%;
	display: block;
	padding:15px 3%;}
.privacy_table2 td {
	width: 100%;
	display: block;
	text-align:right;
	padding:15px 3%;}
.privacy_name {
	text-align: right;
	margin: 5px 0 5% 0;}

/*-------------------------------------------------
  mynavi
-------------------------------------------------*/
.mynavi {
	margin: 0 auto;}
.mynavi li {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	padding-bottom: 0.8em;
    margin-bottom: 0.8em;
	text-align: left;
	border-bottom:1px #D0D0D0 dotted;}
.mynavi .tag {
    background-color: #fe0000;
    color: #fff;
    display: inline-block;
    font-style: normal;
    margin-right: 0.8em;
    text-align: center;
    vertical-align: top;
    width: 4em;}
.mynavi a {
    display: inline-block;
    vertical-align: top;
    width: 90%;}

/*-------------------------------------------------
  odaiba
-------------------------------------------------*/
h2.odaibaTtl {
	border-bottom: 3px #F5F5F5 solid;
    margin: 20px auto;
    padding: 10px 0;
	text-align: center;}
h3.odaibasubTtl {
    background-color: #D7FAE5;
    color: #00923A;
    margin: 30px 0px 10px 0px;
    border-radius: 3px;
    font-weight: bold;
    line-height: 1.5em;
    font-size: 4vw;
    text-align: left;
    padding: 5px 10px;}

.odaibaLeft,
.odaibaRight {
	width: 100%;
	float: left;
	margin: 0px auto 10px auto;
	text-align: center;}
.odaibaLeft img {
	width: 80%;}
.odaibaRight img {
	width: 60%;}
.odaibaLeft02 {
	width: 100%;
	float: left;
	margin: 0px auto 10px auto;
	text-align: center;}

/*-------------------------------------------------
  pressrelease
-------------------------------------------------*/
#pressrelease_box {
	width:100%;
	background-color:#FFFFFF;
	border:1px #D4D4D4 solid;
	padding:3% 2%;
	margin:20px auto 0px auto;
	position:relative;}
.pressreleaseL {
	width: 100%;
	float: left;
	text-align: center;
	margin: 5px auto;}
.pressreleaseL img {
	width: 80%;	}
h3.pressrelease_ttl {
	color: #036F00;
	font-weight: bold;
	font-size: 4.5vw;
	text-align: left;
	padding: 0 0 0.5em 0;
	margin: 0px;
	line-height: 1.5em;}
h4.pressrelease_ttl2 {
    color: #367900;
    font-size: 4vw;
    font-weight: bold;
	margin: 0;
	padding: 0 0 0.5em 0;
	line-height: 1.3em;}
h4.pressrelease_ttl2 a:link,h4.pressrelease_ttl2 a:visited {color:#367900;text-decoration:none;}
h4.pressrelease_ttl2 a:hover,h4.pressrelease_ttl2 a:active {color:#62be19;text-decoration:underline;}
.pressrelease_txt {
	margin-bottom: 15%;}
.pressrelease_Link {
	position:absolute;
	right:20px;
	bottom:15px;
	background-color:#00913B;
	color:#FFFFFF;
	text-align:center;
	width:160px;
	padding: 0px;
	margin: 0px;
	line-height:3em;}
.pressrelease_Link a {
	display: block;
	color: #FFFFFF;}
.pressrelease_Link a:link,
.pressrelease_Link a:visited,
.pressrelease_Link a:hover,
.pressrelease_Link a:active {
	text-decoration: none;
	color: #FFFFFF;}

.pageNavi {
	margin:0 auto;
	text-align: center;
	padding:5vw 0;}
.pageNavi ul li {
	display:inline-block;
	margin:0 0.5vw;}
.pageNavi ul li span,
.pageNavi ul li a {
    display: block;
    padding: 2.5vw 2.5vw;
    line-height: 1;
    text-decoration: none;
    border: 1px solid #d0d0d0;
    border-radius: 5px;
    font-size: 4vw;}
.pageNavi ul li a:hover {
	background-color:#00913B;
	color: #FFFFFF;}
.pageNavi ul li span {
	text-decoration: none;
	background-color:#00913B;
	color: #FFFFFF;}

/*-------------------------------------------------
  Telework
-------------------------------------------------*/
.Telewor_link {
	width:100%;
	margin: 10px 0px 8% 0;
	padding:0px;}
.Telewor_link li {
	padding-bottom: 5px;
	margin-top: 5px;
	border-bottom: 1px #e2e2e2 solid;}
.Telewor_link li a {
	display: block;
    background-image: url(../../Telework/img/arrow.png);
    background-position: left 12px;
    background-repeat: no-repeat;
	font-size: 4vw;
	line-height: 1.6em;
	vertical-align:middle;
	padding:5px 0px 5px 20px;}
.Telewor_link li a:link,.Telewor_link li a:visited {color:#367900;text-decoration:none;}
.Telewor_link li a:hover,.Telewor_link li a:active {color:#57a617;text-decoration:none;}

.breadcrumb {
	display: none;}

h3.TeleworksubTtl {
    margin: 5px 0px 10px 0px;
    color: #5A5C57;
    font-weight: bold;
    line-height: 1.5em;
    font-size: 4vw;
    text-align: left;
    padding: 5px 0;
	border-bottom: 3px #00923A solid;}
.TeleworkW810 {
	width: 100%;
	margin: 10px auto;}
.TeleworkimgC {
	margin: 15px auto;
	padding: 3px;
	border: 1px #d4d4d4 solid;}

.TeleworkBtn {
	width: 100%;
	background-color: #FFFFFF;
	border: 1px #438f45 solid;
	border-radius: 30px;
	font-size: 4vw;
	color: #438f45;
	font-weight: bold;
	text-align: center;
	line-height: 1.8em;
	margin: 20px auto 50px auto;
	padding: 8px 0;}
.TeleworkBtn a {
	display: block;
	color: #438f45;}

.nextBox {
	background-color: #fffbcf;
	padding: 5px;
	text-align: center;
	margin: 0 0 20px 0;}
.nextBox a {
	display: inline-block;
	font-size: 4vw;
	line-height: 1.6em;
	vertical-align:middle;
	padding:5px 0px 5px 15px;
    background-image: url(../../Telework/img/arrow2.png);
    background-position: left 10px;
    background-repeat: no-repeat;}
.nextBox a:link,.nextBox a:visited {color:#367900;text-decoration:none;}
.nextBox a:hover,.nextBox a:active {color:#57a617;text-decoration:none;}
.backLink a {
	text-align: left;
    background-image: url(../../Telework/img/arrow3.png);
    background-position: left 10px;
    background-repeat: no-repeat;
	font-size: 4vw;
	line-height: 1.6em;
	padding:5px 0px 5px 15px;}

.mailmagazine {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    height: auto;
    padding: 1% 0;
    margin: 0;}
.mailmagazineItem {
    width: 100%;}
.mailmagazineItem2 {
    width: 48%;}
h2.mailmagazineTtl {
    width: 100%;
    color: #5A5C57;
    font-size: 5.5vw;
    font-weight: bold;
    line-height: 1.5em;
    padding-bottom: 0.5em;
    text-align: center;}


/*-------------------------------------------------
  Guidebook
-------------------------------------------------*/
.GuidebookBox {
    display: flex;
    width: 100%;;
    flex-wrap: wrap;
    justify-content: space-between;}
.GuidebookBoxItem {
    width: 100%;
    display: flex;
    margin: 20px 0;}
.GuidebookBoxImg {
    width: 30%;
    margin-right: 3%;}
.GuidebookBoxImg img {
    width: 100%;
    border: 1px #bdbdbd solid;}
.GuidebookBoxTxt {
    width: 67%;}

h3.GuidebookMainTtl {
	color: #FFF;
	font-size: 4.5vw;
	font-weight: bold;
	line-height: 1.3em;
	padding: 10px 10px 10px 20px;
    text-align: left;
    margin-top: 15px;
    background-color: #07913b;}
h3.GuidebookTtl {
	color: #04913b;
	font-size: 3.5vw;
	font-weight: bold;
	line-height: 1.3em;
	padding: 0 0 10px 0;
    text-align: left;}
h3.GuidebookTtlY {color: #f8ae01;}
h3.GuidebookTtlB {color: #268fd0;}
h3.GuidebookTtlO {color: #ed6f01;}

.GuidebookBtnBox {
    width: 100%;}
.GuidebookBtn a {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 3vw;
    line-height: 2em;
    font-weight: bold;
    color: #FFFFFF;
    background-color: #04913b;
    border-radius: 30px;
    margin-top: 10px;}
.GuidebookBtnY a {background-color: #f8ae01;}
.GuidebookBtnB a {background-color: #268fd0;}
.GuidebookBtnO a {background-color: #ed6f01;}

.GuidebookBox {
    display: flex;
    width: 100%;;
    flex-wrap: wrap;
    justify-content: space-between;}
.GuidebookBoxItem {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin: 20px 0;}
.GuidebookBoxImg {
    width: 30%;
    margin-right: 3%;}
.GuidebookBoxImg img {
    width: 100%;
    border: 1px #bdbdbd solid;}
.GuidebookBoxTxt {
    width: 67%;}
h3.GuidebookTtl {
	color: #04913b;
	font-size: 3.8vw;
	font-weight: bold;
	line-height: 1.3em;
	padding: 0 0 10px 0;
    text-align: left;}
h3.GuidebookTtlY {color: #f8ae01;}
h3.GuidebookTtlB {color: #268fd0;}
h3.GuidebookTtlO {color: #ed6f01;}
h3.GuidebookTtlP {color: #e85471;}
h3.GuidebookTtlM {color: #b177af;}
h3.GuidebookTtlR {color: #d80c18;}
h3.GuidebookTtlNB {color: #3757a3;}
h3.GuidebookTtlPP {color: #645ab1;}
h3.GuidebookTtlG {color: #177a41;}
h3.GuidebookTtlYG {color: #8ec220;}

.GuidebookBtnBox {
    display: flex;
    width: 100%;
    flex-direction: column;}
.GuidebookBtnBox li {
    width: 80%;
    display: block;
    list-style-type: none;
    margin: 0 auto;
    padding: 0;
    text-indent: 0;}
.GuidebookBtnBox li a {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 3.5vw;
    line-height: 2.3em;
    font-weight: bold;
    color: #FFFFFF;
    background-color: #04913b;
    border-radius: 30px;
    margin-top: 10px;}
.GuidebookBtnBoxY {background-color: #f8ae01 !important;}
.GuidebookBtnBoxB {background-color: #268fd0 !important;}
.GuidebookBtnBoxO {background-color: #ed6f01 !important;}
.GuidebookBtnBoxP {background-color: #e85471 !important;}
.GuidebookBtnBoxM {background-color: #b177af !important;}
.GuidebookBtnBoxR {background-color: #d80c18 !important;}
.GuidebookBtnBoxNB {background-color: #3757a3 !important;}
.GuidebookBtnBoxPP {background-color: #645ab1 !important;}
.GuidebookBtnBoxG {background-color: #177a41 !important;}
.GuidebookBtnBoxYG {background-color: #8ec220 !important;}

/*-------------------------------------------------
  Sateraitooffice_Notice_of_Price_Revision
-------------------------------------------------*/
.PriceRevisionTtl {
    border-top: 3px #4d8939 solid;
    border-bottom: 3px #4d8939 solid;
    padding: 0.6em 0 0.3em 0;
    margin-bottom: 0.3em;}
.PriceRevisionDay {
    text-align: right;
    font-size: 3vw;}
.PriceRevisionsubTtl {
    background-color: #4d8939;
    border-radius: 30px;
    line-height: 1.3em;
    color: #FFF;
    font-size: 4vw;
    padding: 0.5em 1.5em;
    margin: 1em 0 0.8em 0;}
.PriceRevisionImg {
    margin: 2% auto;
    text-align: center;}

.PriceRevisionTbl {
    table-layout: fixed;
	margin:5px auto 10px auto;
	line-height:1.6em;
	border-top: 1px solid #D0D0D0;
	border-right: 1px solid #D0D0D0;}
.PriceRevisionTbl th {
	color: #fff;
    font-size: 3.3vw;
	text-align:center;
	font-weight: bold;
	padding:10px 10px;
	vertical-align:middle;
	background-color: #7d7d7d;
	border-bottom: 1px solid #D0D0D0;
	border-left: 1px solid #D0D0D0;}
.PriceRevisionTbl th.Blue {background-color: #75a1ff;}
.PriceRevisionTbl td {
	text-align:left;
    font-size: 3.3vw;
	padding:10px 10px;
	vertical-align:middle;
	border-bottom: 1px solid #D0D0D0;
	border-left: 1px solid #D0D0D0;}
.PriceRevisionTbl td.center {text-align: center;}
.PriceRevisionTbl td.Blue {background-color: #e6f2ff;font-weight: bold;}

.PriceRevisionG {
    word-break: break-all;
	color:#07913b !important;}
.PriceRevisionG a:link,.PriceRevisionG a:visited {
	text-decoration: underline !important;
	color: #07913b;}
.PriceRevisionG a:hover, .PriceRevisionG a:active {
	text-decoration: none !important;
	color: #07913b;}

/*-------------------------------------------------
  whitepapers
-------------------------------------------------*/
.whitepapersBox {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;}
.whitepapersItem {
    width: 100%;
    display: flex;
    flex-direction: column;
    margin: 0 0 8vw 0;}
.whitepapersItem img {width: 100%;}
.whitepapersItem p {
    font-size: 3.8vw;
    line-height: 1.3em;
    padding-top: 0.3em;}









