@charset "utf-8";

/*
Theme Name: Keyshot 2020
Theme URI: https://keyshot.info/
Author: HELIX Corp.
Description: 2020年3月作成
Version: 1.0
*/


body.customize-support,
body.customize-support #header-wrapper {
	margin-top: 32px !important;
}

/*Tabletは940px以下、Smartphoneは横にした時を含め767px以下に設定*/
/*テスト用グリッド表示*/
.grid-test .columns,
.grid-test .column,
.grid-test .n-columns,
.grid-test .n-column {
	border: solid 1px #eee;
}


/* Grid
========================================================= */
/*最大幅*/
.container {
	max-width: 1146px;
}
/*メインコンテナの幅*/
.container.inside {
	max-width: 1080px;
}
.container.fullwidth {
	max-width: 100%;
	width: 100%;
}
/*insideの内部*/
.container.inside .inside-inner {
	max-width: 950px;
	margin: 1em auto 0;
}
.container.fullwidth .inside {
	padding: 1em 5%;
}
.container.fullwidth .inside-inner {
	max-width: 1080px;
	margin: 1em auto 0;
}
/*スマートフォンの本文のマージン*/
@media (max-width: 767px) {
	.sp-inner {
		margin: 0 10px;
	}
	.sp-inner .column,
	.sp-inner .columns {
		margin: 0 0 2em;
	}
}


/* Base Styles
========================================================= */
body {
	font-size: 16px;/* currently ems cause chrome bug misinterpreting rems on body element */
	line-height: 1.78;
	font-weight: 500;
	font-family:
	"Yu Gothic", "游ゴシック",/* win */
	YuGothic, "游ゴシック体",/* mac */
	メイリオ,
	serif;
	color: #4d4d4d;
}
.gothic {
	font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体",メイリオ,sans-serif;
}
.mincho {
	font-family:"Yu Mincho", "游明朝", YuMincho, "游明朝体",sans;
}


/* Typography
========================================================= */
pre, blockquote, dl, figure, table, p, ul, ol, form {
	margin-bottom: 0;
}
h1, h2, h3, h4, h5, h6 {
	margin-top: 0;
	margin-bottom: 0;
	font-weight: 600;
	color: #193446;
}
h1 {
	line-height: 1.2;
	letter-spacing: 0;
}
h2 {
	line-height: 1.25;
	letter-spacing: 0;
}
h3 {
	line-height: 1.3;
	letter-spacing: 0;
}
h4 {
	line-height: 1.35;
	letter-spacing: 0;
}
h5 {
	line-height: 1.5;
	letter-spacing: 0;
}
h6 {
	line-height: 1.6;
	letter-spacing: 0;
}
h1 {
	font-size: 4.0rem;
}
h2 {
	font-size: 2.0rem;
}
h3 {
	font-size: 1.8rem;
}
h4 {
	font-size: 1.7rem;
}
h5 {
	font-size: 1.6rem;
}
h6 {
	font-size: 1.5rem;
}
section h1,
section h2,
section h3,
section h4,
section h5,
section h6 {
	padding: 1em 0 0.5em;
}
section p {
	padding: 0 0 1em;
}
section dl {
	font-size: 1.4rem;
}
section dt {
	font-weight: bold;
}
/* Larger than phablet */
@media (max-width: 940px) {

}
@media (max-width: 767px) {
	body{
		font-size: 1.3em;
	}
	h1 {
		font-size: 1.5rem;
	}
	h2 {
		font-size: 1.2rem;
	}
	h3 {
		font-size: 1.5em;
	}
	h4 {
		font-size: 1em;
	}
	h5 {
		font-size: 0.9rem;
	}
	h6 {
		font-size: 0.8rem;
	}
	section h1,
	section h2,
	section h3,
	section h4,
	section h5,
	section h6 {
		margin: 0 0 0;
	}
}


/* Links
========================================================= */
a {
	color: #0066ff;
	text-decoration: none;
}
a:hover {
	/*color: #00a0e9;*/
	/*text-decoration: underline;*/
	transition-property: all;
	transition: 0.2s linear;
}
.link-btn a:hover img {
	filter: alpha(opacity=75);
	-moz-opacity: 0.75;
	opacity: 0.75;
	transition-property: all;
	transition: 0.2s linear;
}
p a {
	/*text-decoration: underline;*/
}
a img {
	vertical-align: bottom;
}


/* Misc
========================================================= */
hr {
	border-top: 1px solid #c8c8c8;
}
hr.dot1 {
	border-top: 1px dotted #c8c8c8;
}
hr.dot2 {
	border-top: 2px dotted #c8c8c8;
}
em {
	font-style: normal;
	font-weight: bold;
	color: #c8c8c8;
}
.theme-color {
	color: #0b60ff;
}
.bg-theme {
	background-color: #222222;
}
.bg-pale {
	background-color: #f8f8f8;
}
.nowrap {
	white-space: nowrap;
}
.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}
.text-left {
	text-align: left;
}
.mgn1em {
	margin: 1em 1em 0 1em;
}
.pad1em {
	padding: 1em 1em 1em 1em;
}
.mgt1em {
	margin-top: 1em;
}
.mgt2em {
	margin-top: 2em;
}
.pat1em {
	padding-top: 1em;
}
.pat2em {
	padding-top: 2em;
}
.mgt1em-pc {
	margin-top: 1em !important;
}
.mgt2em-pc {
	margin-top: 2em !important;
}
.mgt3em-pc {
	margin-top: 3em !important;
}
.mgl1em {
	margin-left: 1em;
}
.mgt-1em {
	margin-top: -1em !important;
}
.mgt-2em-pc {
	margin-top: -2em !important;
}
.mgt-3em-pc {
	margin-top: -3em !important;
}
.mgt-4em-pc {
	margin-top: -4em !important;
}
.mgt-5em-pc {
	margin-top: -5em !important;
}
.mgt-6em-pc {
	margin-top: -6em !important;
}
.mgt-7em-pc {
	margin-top: -7em !important;
}
.mgt-8em-pc {
	margin-top: -8em !important;
}
.mgt-9em-pc {
	margin-top: -9em !important;
}
.mgt-10em-pc {
	margin-top: -10em !important;
}
.mgl-1em-pc {
	margin-left: -1em !important;
}
.mgl-2em-pc {
	margin-left: -2em !important;
}
.mgb1em {
	margin-bottom: 1em;
}
.pdb1em {
	padding-bottom: 1em;
}
.note {
	font-size: 0.9em;
}
.note-indent {
	padding-left: 1em;
	text-indent: -1em;
}
.hide {
	display: none;
}
.visible-sp {
	display: none;
}
.black {
	color: #000;
}
.list-no-mark {
	list-style-type: none;
}
.list-indent li {
	text-indent: -1.2em;
	padding-left: 1.2em;
}
ul.nav-line li a,
.nav-line li a,
.nav-line ul li a,
ul.nav-line li:first-child a,
.nav-line li:first-child a,
.nav-line ul li:first-child a {
	border: none;
}
.img-caption {
	font-size: 10px;
	color: #666;
	margin-top: -0.8em;
	display: block;
}
@media (max-width: 940px) {

}
@media (max-width: 767px) {
	.mgt1em-pc {
		margin-top: 0 !important;
	}
	.mgt2em-pc {
		margin-top: 0 !important;
	}
	.mgt3em-pc {
		margin-top: 0 !important;
	}
	.mgt1em-sp {
		margin-top: 1em;
	}
	.mgt2em-sp {
		margin-top: 2em;
	}
	.hide-sp {
		display: none;
	}
	.visible-sp {
		display: block;
	}
	br.visible-sp {
		display: inline;
	}
	.mgt-1em-pc {
		margin-top: 0 !important;
	}
	.mgt-2em-pc {
		margin-top: 0 !important;
	}
	.mgt-4em-pc {
		margin-top: 0 !important;
	}
	.mgt-5em-pc {
		margin-top: 0 !important;
	}
	.mgt-6em-pc {
		margin-top: 0 !important;
	}
	.mgt-7em-pc {
		margin-top: 0 !important;
	}
	.mgt-8em-pc {
		margin-top: 0 !important;
	}
	.mgt-9em-pc {
		margin-top: 0 !important;
	}
	.mgt-10em-pc {
		margin-top: 0 !important;
	}
	.mgl-1em-pc {
		margin-left: 0 !important;
	}
	.mgl-2em-pc {
		margin-left: 0 !important;
	}
	.text-center-sp {
		text-align: center;
	}
	.text-right-sp {
		text-align: right;
	}
	.text-left-sp {
		text-align: left;
	}
	p img{
		max-width: 100%;
		height: auto;
	}
}


/* Header
========================================================= */
#header-wrapper {
	position: fixed;
	top: 0;
	justify-content: space-between;
	width: 100%;
	z-index: 9999;
}
#header {
	box-sizing: border-box;
	height: 60px;
	padding: 12px;
	background-color: #000;
}
#header .columns {
	margin-left: 0;
	line-height: 1;
}
#header .columns.last {
	width: 50%;
}
.header-change,
#header-wrapper.reverse .header-default {
	display: none;
}
#header-wrapper.reverse .header-change {
	display: inline-block;
	transition-property: all;
	transition: 0.2s linear;
}
#header-wrapper.reverse {
	filter: alpha(opacity=85);
	-moz-opacity: 0.85;
	opacity: 0.85;
	transition-property: all;
	transition: 0.2s linear;
}
@media (max-width: 1000px) {
	#header .row > .columns {
		width: 65% !important;
	}
}


/* サイト名（#site-name）
-------------------------------------------------- */
#site-name {
	/*width: 300px;*/
	/*padding: 8px 0 12px;*/
	font-size: 28px;
}

#site-name a{
	color: white;
	text-decoration: none;
}
#site-name .site-logo {}
#site-name .site-title{}

#site-name, .sns-menu{
	display: inline-block;
	font-weight: normal;
	line-height: 1;
}

#header-wrapper.reverse #site-name a{color: #fff;}

@media (max-width: 1000px) {
	#site-name {
		font-size: 20px;
	}
}

/* SNSメニュー1（.sns-menu）
-------------------------------------------------- */
.sns-menu {
	padding: 0 0 0 calc( 14vw/10 );
}
.sns-menu img{
	width: 30px;
	height: auto;
	margin-bottom: 10px;
}
.sns-menu.nav-line li a{
	padding: 0 0 0 5px;
}





/*ヘルプメニュー（#help-menu）
---------------------------------------------- */
#help-menu {
	padding-top: 4px;
	margin-right: 10px;
}
#help-menu.nav li a {
	display: inline-block;
	width: 180px;
	color: #fff;
	line-height: 40px ;
	padding: 0;
	border: solid 1px #fff;
	margin-left: calc( 14vw/10 );
}
#help-menu.nav li a:hover {
	background-color: #948080;
}


ul.nav li.btn-tel {
	font-size: 1.0rem;
	text-align: center;
	color: #fff;
	line-height: 1.2;
	padding: 5px 0 0 2.5em;
	background-image: url("images/icon_phone@2x.png");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 21px;
}
ul.nav li.btn-tel strong{
	font-size: 2.0rem;
	letter-spacing: 0.1em;
}

ul.nav li.btn-ninkatsu a{
	background-color: #627178;
	background-image: url("images/icon_mail@2x.png");
	background-repeat: no-repeat;
	background-position: 8.5% 41%;
	background-size: 16px;
	padding-left: 1.2em !important;
}
ul.nav li.btn-yoyaku a{
	background-color: #193446;
	background-image: url("images/icon_ex@2x.png");
	background-repeat: no-repeat;
	background-position: 85% 45%;
	background-size: 13px;
	padding-right: 1.3em !important;
}


#header-wrapper.reverse li.btn-tel{
	color: #4d4d4d;
	background-image: url("images/icon_phone_gray@2x.png");
	transition-property: all;
	transition: 0.2s linear;
}


/*グローバルナビ（#menu-global-nav）
---------------------------------------------- */
#menu-global-nav {
  width: 100%;
/*transition-property: all;
  transition: 0.2s linear;*/

  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-justify-content: center;
  justify-content: center;
  width: 100%;
  margin: 10px 0 0 0;
  padding: 0;
  line-height: 1;
}
#menu-global-nav li {
 margin-bottom: 0;
 /*background: #000;*/
 list-style: none;
 overflow: visible;
}
#menu-global-nav > li {
  list-style-type: none;
  width: 16%;
}
#menu-global-nav li a{
  display: table;
  color: #fff;
  font-size: 1.4rem;
  /*padding: 7px 24px;*/
/*background-image: none;
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 3px;
  transition-property: all;
  transition: 0.2s linear;*/

/*padding: 1em 1em;*/
  width: 100%;
  /*height: 2.5em;*/
height: 2em;
  text-decoration: none;
  vertical-align: middle;
  overflow: hidden;
  transition:all .5s ease-out;
  box-sizing: border-box;
}
#menu-global-nav li a:hover {
  /*color: #0b60ff;*/
  /*font-weight: 600;*/
  text-decoration: none;
  /*transition-property: all;
  transition: 0.2s linear;*/

  transition: all .5s ease-out;
}
#menu-global-nav > li:first-child a {
	margin-top: 0;
}
#menu-global-nav li ul {
	width: 200%;
	margin: 0;
	padding: 0;
}
/* 格納する */
#menu-global-nav li li a {
	display: block;
	margin-top: 0;
	padding: 0 10px;
	height: 0;
	background: #000;
	transition:all .5s ease-out;
}
#menu-global-nav li li a:hover {
 background: #0066ff;
 transition:all .5s ease-out;
}
/* ホバーすると飛び出る */
#menu-global-nav > li:hover li a {
 display: table;
 padding: 10px 10px;
 width: 100%;
 transition:all .5s ease-out;
 line-height: 1.5;
}
#menu-global-nav li li li a {
  text-indent: 1em;
}
#menu-global-nav li li li a:before {
 content: '-';
 margin-right: .5em;
}
#menu-global-nav .sub-menu-item {
	width: 50% !important;
}
/*
#menu-global-nav li.menu-item-has-children {
  position: relative;
}
*/
/*
#menu-global-nav li.menu-item-has-children > .sub-menu {
  display: none;
  position: absolute;
  top: 1em;
  background-color: #000;
  white-space: nowrap;
}
#menu-global-nav li.menu-item-has-children:hover > .sub-menu{
  display: block;
}
#menu-global-nav li.menu-item-has-children > .sub-menu .menu-item-has-children > a:first-child::after {
  content: "▼";
  font-size: 7px;
  position: absolute;
  right: 10px;
  top: 10px;
  font-weight: 600;
  color: #666;
  padding-bottom: 0;
}
#menu-global-nav li.menu-item-has-children > .sub-menu .sub-menu{
  position: relative;
  margin-top: 0;
}
#menu-global-nav li.menu-item-has-children > .sub-menu .sub-menu li{
  margin-top: 0;
}
#menu-global-nav li.menu-item-has-children > .sub-menu .sub-menu li a{
  padding-top: 0;
}
*/
#sp-nav {
  display: none;
}
@media (max-width: 1500px) {
  #menu-global-nav li a{
  	font-size: 1.2rem;
	}
}
/*for Mobile*/
@media (max-width: 1169px) {
  ul.nav li.btn-tel {
    margin-left: -6em;
  }
}

@media (max-width: 1065px) {
  .sns-menu {
    padding: 0 0 0 calc( 10vw/10 );
  }
  #help-menu.nav li a {
    width: 150px;
    margin-left: 10px;
    font-size: 1.2rem;
  }
  ul.nav li.btn-ninkatsu a{
    background-position: 6% 41%;
  }
  #menu-global-nav li a {
    padding-left: calc( 14vw/10 );
    padding-right: calc( 14vw/10 );
  }

}

@media (max-width: 999px) {

	/*
	 #header {
		padding-top: 6px;
	}*/

	#site-name{
		/*width: calc( 270vw/10 );*/
	}
	.sns-menu img {
		width: calc( 27vw/10 );
	}
	.sns-menu.nav-line li a {
		padding-left: calc( 1vw/10 );
		padding-right: calc( 1vw/10 );
	}

	ul.nav li.btn-tel strong {
		font-size: 1.65rem;
		letter-spacing: 0.1em;
	}

	#help-menu {
		margin-right: 0;
	}
	#help-menu.nav li a {
		width: calc( 170vw/10 );
		font-size: 1.1rem;
	}
	ul.nav li.btn-ninkatsu a{
		background-position: 6% 41%;
		background-size: 12px;
	}
	ul.nav li.btn-yoyaku a{
		background-position: 87% 45%;
	}

	#global-nav li a {
		font-size: 1.2rem;
	}

	#top01 h2 img {

	}

}
@media (max-width: 1024px) {
	#header {
		display: none;
	}
}

@media (max-width: 1024px) {
	#header {
		display: none;
	}

	#site-name {
		margin: 0 auto;
	}

	#main-image .container {
		padding: 0;
	}
	#main-image .slick-slide img {
		width: 100%;
		height: 280px;
		object-fit: cover;
	}
	#main-image .slick-arrow {
		display: none !important;
	}

	#global-nav {
		display: none;
	}

	/*スマートフォンのヘッダ*/
	#header-wrapper.reverse {
		/*position: relative;*/
	}
	#sp-nav {
		display: block;
		min-height: 20px;
		position: relative;
		border-bottom: solid 1px rgba(255,255,255, 0.2);
		background-color: #000;
	}
	#sp-site-name{
		/*max-width: 260px;*/
		width: calc(100% - 60px);
		height: 60px;
		padding: 21px;
		margin-left: auto;
		box-sizing: border-box;
		font-size: 20px;
		line-height: 1;
	}
	#sp-site-name a {
		color: #fff;
		text-decoration: none;
	}
	#sp-menu-wrapper{
		display: none;
		/*background: rgba(0,0,0,0.83);*/
		background-color: #000;
		text-align: center;
		box-sizing: border-box;
	}
	.sp-menu-inner{
		padding: 20px 0 10px;
		height: calc(100vh * 0.99 - 45px);
		overflow: auto;
		-webkit-overflow-scrolling: touch;
		box-sizing: border-box;
	}
	.global-sp {
		display: inline-block;
		padding: 0;
		margin: 0 30px;
		text-align: left;
	}
	.global-sp li{
		margin-bottom: 0;
		padding: 0;
		list-style-type: none;
	}
	.global-sp a {
		display: block;
		width: 100%;
		padding: 5px 0 10px;
		font-size: 1.5rem;
		line-height: 1.7;
	}
	#sp-menu-wrapper li a {
		color: #fff;
	}
	#sp-menu-wrapper li a:hover {
		color: #0b60ff;
		font-weight: 600;
		text-decoration: none;
	}
	.sp-help-menu {
		font-size: 1.5rem;
		line-height: 2;
		margin: 0 25px;
		padding-top: 5px;
	}
	.sp-help-menu li{
		display: block;
		border: solid 1px #fff;
		margin: 12px 0;
	}
	.sp-help-menu li a{
		display: block;
		width: 100%;
		height: 50px;
		box-sizing: border-box;
		padding-top: 5px;
	}
	.sp-help-menu li.btn-tel a{
		font-size: 1.0rem;
		text-align: center;
		color: #fff;
		line-height: 1.2;
		background-image: url("images/icon_phone@2x.png");
		background-repeat: no-repeat;
		background-position: calc(50% - 100px) calc(100% - 15px);
		background-size: 21px;
	}
	.sp-help-menu li.btn-tel strong{
		display: inline-block;
		font-size: 2.0rem;
		letter-spacing: 0.1em;
		margin-top: 3px;
	}
	.sp-help-menu li.btn-01 a{
		color: #fff;
		background-color: #627178;
/*
		background-image: url("images/icon_mail@2x.png");
		background-repeat: no-repeat;
		background-position: calc(50% - 90px) calc(100% - 18px);
		background-size: 16px;
*/
		font-size: 1.5rem;
		line-height: 2.6;
		text-align: center;
	}
	.sp-help-menu li.btn-02 a{
		color: #fff;
		background-color: #193446;
/*
		background-image: url("images/icon_ex@2x.png");
		background-repeat: no-repeat;
		background-position: calc(50% + 70px) calc(100% - 20px);
		background-size: 13px;
*/
		font-size: 1.5rem;
		line-height: 2.6;
		text-align: center;
	}
	.sp-help-menu li a:hover {
		color: #fff !important;
		background-color: #0b60ff !important;
		text-decoration: none;
	}
	#header-wrapper.reverse #sp-nav {
		border-bottom: none;
	}
	#header-wrapper.reverse .sp-help-menu li.btn-tel{
		background-image: none;
	}
	.sp-sns-menu {
		text-align: center;
		margin: 15px 0 5px;
	}
	.sp-sns-menu li a {
		padding: 5px 2px !important;
	}
	.sp-sns-menu li a:hover {
		background: transparent !important;
	}
	.sp-sns-menu li a img{
		width: 30px;
		height: 30px;
	}
	#sp-help-menu2 {
		padding: 20px 10px 15px 0;
		font-size: 1.2rem;
		line-height: 1.2;
		background-color: #4d4d4d;
	}
	#sp-help-menu2 li a:hover{
		text-decoration: underline;
		background: transparent;
	}
	.btn_hamburger {
		position: fixed;
		top: 0;
		left: 0;
		width: 60px;
		height: 60px;
		overflow: hidden;
		box-sizing: border-box;
		margin: 0 auto;
		padding: 0;
	}
	.btn_hamburger a {
		position: relative;
		display: block;
		margin: 0 auto;
		width: 100%;
		height: 100%;
		-webkit-transition: all .4s;
		transition: all .4s;
		box-sizing: border-box;
		text-decoration: none;
	}
	.btn_hamburger span {
		position: absolute;
		display: inline-block;
		left: 0;
		width: 30px;
		height: 3px;
		background-color: #fff;
		-webkit-transition: all .4s;
		transition: all .4s;
		box-sizing: border-box;
		margin: 15px;
	}
	.btn_hamburger span:nth-of-type(1) {
		top: 2px;
	}
	.btn_hamburger span:nth-of-type(2) {
		top: 14px;
	}
	.btn_hamburger span:nth-of-type(3) {
		bottom: 1px;
	}
	.btn_hamburger span:nth-of-type(2)::after {
		position: absolute;
		top: 0;
		left: 0;
		content: '';
		width: 100%;
		height: 3px;
		background-color: #fff;
		-webkit-transition: all .4s;
		transition: all .4s;
	}
	.btn_hamburger .active span:nth-of-type(2) {
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.btn_hamburger .active span:nth-of-type(2)::after {
		-webkit-transform: rotate(90deg);
		-ms-transform: rotate(90deg);
		transform: rotate(90deg);
	}
	.btn_hamburger .active span:nth-of-type(1) {
		-webkit-transform: translateY(10px) scale(0);
		-ms-transform: translateY(10px) scale(0);
		transform: translateY(10px) scale(0);
	}
	.btn_hamburger .active span:nth-of-type(3) {
		-webkit-transform: translateY(-10px) scale(0);
		-ms-transform: translateY(-10px) scale(0);
		transform: translateY(-10px) scale(0);
	}
	.btn_hamburger em {
		position: absolute;
		display: inline-block;
		color: #fff;
		font-size: 16px;
		top: -6px;
		left: 30px;
	}
	.btn_hamburger em.close {
		display: none;
	}
	#header-wrapper.reverse .btn_hamburger{
		background-color: #8d9994;
	}
}
@media screen and (max-width: 320px) {
	#main-image .slick-slide img {
		height: 240px;
	}
}



/* Content
========================================================= */
main {
	top: 0;
}

#content.top section{
	padding: 3em 0 2.5em;
}


#content:not(.top) {
	margin-top: 100px;
	padding-bottom: 80px;
	border-bottom: solid 1px #e2e2e1;
}


/*トップ：
---------------------------------------------- */
.top .container {
	text-align: center;
}


/*共通*/
.top h3 {
	font-size: 2.4rem;
	line-height: 2;
	padding-bottom: 1em;
}
.big {font-size: 1.6rem;}
.bigger {
	font-size: 1.8rem;
	line-height: 1.2;
}
.biggest {
	font-size: 2.6rem;
	line-height: 1.2;
}
.em-big {
	font-size: 3.6rem;
}


.icon-stars {
/*
	background-image: url("images/deco_stars@2x.png");
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 100px;
*/
}
.icon-stars{
	padding: 1.5em 0 1em;
	margin-top: 1em;
}



.bg-check {
/*
	background: url("images/bg_check.png");
*/
}



/*メインイメージ（動画背景）*/

.main-image-container {
	background: #222222;
	position: relative;
	padding: 0 0 !important;
	overflow-x: hidden;
	text-align: center;
}

#youtube-wrap {
	position: relative;
	/*height: 100vh;*/
	height: 900px;
	width: 100%;
}

.main-image-container > video > source,
.main-image-container > img{
	width: 100%;
	height: 900px;
	object-fit: cover;
	vertical-align: bottom;
}
.main-image-inner {
	width: 100%;
	position: absolute;
	top: 30%;
	text-align: center;
}
.main-image-title {
	color: #fff;
	font-size: 3.6rem;
}
.main-image-title img{
	max-width: 320px;
	height: auto;
	margin: 0 auto;
}
.main-image-inner p {
	color: #fff;
	font-size: 30px;
}


/*ニュースティッカー*/
.news-ticker {
	background-color: #fff;
	width: 745px;
	margin: 0 auto;
	text-align: left;
	padding: 0.5em 2em 0;
	margin-top: 3%;
}
.news-ticker h3, .news-ticker p {
	display: inline-block;
	color: #4d4d4d !important;
}
.news-ticker h3{
	border-right: solid 1px #999;
	width: 5em;
	font-size: 1.4rem !important;
	line-height: 1;
}
.news-ticker p{
	margin-bottom: 0;
	margin-left: 2em;
}
.news-ticker a{
	color: #4d4d4d !important;
	text-decoration: none;
}
.news-ticker a:hover{
	text-decoration: underline;
}


#top03 .fx-3col{
}
#top03 .fx-3col li{
	margin-top: 50px;
	position: relative;
	padding-bottom: 3.5em;
}
#top03 .fx-3col li a{
	display: block;
	width: 100%;
	max-width: 160px;
	border: solid 1px #4d4d4d;
	text-align: center;
	color: #4d4d4d;
	padding: 7px;
	position: absolute;
	bottom: 0;
	left: calc(45% - 80px);
}
#top03 .fx-3col li a:hover {
	text-decoration: none;
	background-color: #0b60ff;
	color: #fff;
	border-color: #0b60ff;
}
#top03 .fx-3col li span{
	display: inline-block;
	padding-left: 3%;
}



#top04 .fx-2col{
}
#top04 .fx-2col li{
	background: #d8dedc;
	padding: 70px 30px 50px;
	margin-top: 100px;
}
#top04 .fx-2col li img:first-child{
	margin-top: -127px;
}
#top04 .fx-2col li strong {
	display: block;
	font-size: 1.6rem;
	line-height: 1.2;
	text-align: center;
	color: #193446;
}


#top05 .fx-4col{
}
#voice-list.fx-4col li{
	margin-top: 30px;
	max-height: 350px;
}
#voice-list.fx-4col li .voice-thumbnail{
	width: 100%;
	height: 236px;
	display: block;
	background-image: url("images/deco_frame@2x.png");
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain;
	margin-bottom: 10px;
	box-sizing: border-box;
	padding: 42px 30px;
}
.voice-thumbnail img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 0 0;
}

.fx-4col li a {
	color: #4d4d4d;
}
.fx-4col li a img{
	vertical-align: middle;
}
.fx-4col li a .big{
	color: #2a363f;
}
.more-arrow {
	display: inline-block !important;
	margin-left: 0.5em !important;
}
.top #footer-address{
	padding-top: 0;
}
#footer-address {
	padding: 30px 0 ;
	color: #fff;
}
#footer-address a {
	color: #3583f9;
}
#footer-address #contact,
#footer-address #access-name {
	padding-top: 20px;
	font-size: 1.6rem;
	line-height: 1.5;
}
#footer-address #contact {
  text-align: right;
}
#footer-address #access-name span{
	font-size: 2.6rem;
}
#footer-address .sns-menu {
	padding: 10px 0 0 10px;
}
.whatsnew.fx-4col li{
	margin-top: 20px;
}
.whatsnew-thumbnail{
	display: inline-block;
	width: 100%;
	padding: 0;
	margin-bottom: 10px;
}
.whatsnew-thumbnail img{
	width: 100%;
	height: 180px;
	object-fit: cover;
}
.label {
	display: inline-block;
	background: #2a363f;
	color: #fff;
	border-radius: 4px;
		-moz-border-radius: 4px;
		-webkit-border-radius: 4px;
		-o-border-radius: 4px;
		-ms-border-radius: 4px;
	font-size: 80%;
	line-height: 1.2;
	padding:3px 5px 1px;
	margin: 0 0 5px;
}
.label-new {
	background: #e79689;
	color: #fff;
}


.btn-more {
	margin: 10px 0 30px; text-align: center;
}
.btn-more a,
a.btn-more {
	padding: 11px 35px 10px;
	border: solid 1px #000;
	color: #4d4d4d;
}
.btn-more a:hover,
a:hover.btn-more {
	text-decoration: none;
	background-color: #0b60ff;
	color: #fff;
	border-color: #0b60ff;
}
.btn-back a {
	display: inline-block;
	width: 150px;
	padding: 5px 10px 5px;
	box-sizing: border-box;
}
.btn-prev a {
	display: inline-block;
	background-image: url("images/arrow_prev@2x.png");
	background-repeat: no-repeat;
	background-position: 1% 45%;
	background-size: 18px 9px;
	float: left;
	padding: 5px 10px 5px;
	width: 150px;
	box-sizing: border-box;
}
.btn-next a {
	display: inline-block;
	background-image: url("images/arrow_more@2x.png");
	background-repeat: no-repeat;
	background-position: 99% 45%;
	background-size: 18px 9px;
	float: right;
	padding: 5px 10px 5px;
	width: 150px;
	box-sizing: border-box;
}
#article-nav {
	margin-top: 2em;
}
#article-nav .fx-3col > li{
	margin: 0;
}
.md-bar-dot {
	border-color: #193446;
	border-style: dotted;
	border-width: 2px 0;
	background-color: #d8dedc;
	box-shadow: 0 0 0 2px rgba(255,255,255,1.0) inset;
	font-size: 1.8rem;
	line-height: 1.2;
	padding: 15px 0;
	margin-top: 25px;
}
.md-bar-dot-pink {
	border-color: #0b60ff;
	background-color: #faeae7;
	color: #685a5a;
}
.inside-inner {
	text-align: left;
}
.inside-inner .mincho{
	font-size: 2.0rem;
	line-height: 1.5;
	color: #000;
	padding-bottom: 15px;
}
.txt-pink {
	color: #da8072;
}
.txt-black {
	color: #000;
}
.bg-beige {
	background-color: #fcfbfa;
}
.md-bar {
	border-color: #d5d3d3;
	border-style: solid;
	border-width: 1px 0;
	color: #193446;
	font-size: 2.0rem;
	line-height: 1.2;
	padding: 15px 0;
	margin-top: 40px;
	margin-bottom: 20px;
}
p + .md-bar {
	margin-top: 20px;
}


/*for Mobile*/
@media (max-width: 1169px) {
	.fx-4col, .fx-3col, .fx-2col {
		padding: 0 2%;
	}
	#voice-list.fx-4col li .voice-thumbnail {
		height: calc(220vw/12);
		padding: calc(40vw/12) calc(35vw/12);
	}
	#top09 .container {
		padding: 0 2%;
	}
	#footer-address {
		padding-left: 2%;
		padding-right: 2%;
	}
	#footer-address #access-name {
		padding-top: 7px;
		font-size: 1.4rem;
	}
	#footer-address #access-name span {
		font-size: 2.3rem;
		letter-spacing: -0.05em;
		margin-left: 5px;
	}
}

@media (max-width: 940px) {
	#footer-address{
		padding-left: 1%;
		padding-right: 1%;
	}
	#footer-address #access-name {
		padding-top: 5px;
		font-size: 1.3rem;
	}
	#footer-address #access-name span {
		font-size: 1.9rem;
		letter-spacing: -0.07em;
	}
}

@media (max-width: 767px) {
	#content:not(.top) {
		margin-top: 50px;
	}
	#content section {
		padding: 2em 0 1.5em;
	}
	.top h3 {
		font-size: 2.0rem;
	}
	.big {
		font-size: 1.3rem;
	}
	.bigger {
		font-size: 1.5rem;
	}
	.em-big {
		font-size: 2.0rem;
	}
	.md-bar {
		font-size: 1.7rem;
		line-height: 1.5;
	}
	.main-image-container {
		height: 100vh;
		overflow: hidden;
	}
	#youtube-wrap {
		height: 100vh;
	}
	.main-image-container > img {

	}
	.main-image-inner {
		top: 20%;
		padding: 0 5%;
		box-sizing: border-box;
	}
	.main-image-title {
		color: #fff;
		font-size: 2.4rem;
		line-height: 1.2;
	}
	.main-image-title img {
		width: 100%;
		height: auto;
		margin-bottom: 4%;
	}
	.main-image-inner p {
		font-size: 1.3rem;
	}
	.news-ticker {
		display: none;
		width: 88%;
		padding: 0.5em 2em 0;
	}
	.news-ticker h3 {
		width: 100%;
		text-align: center;
		border-right: none;
		padding: 0.5em 0;
	}
	.news-ticker p {
		margin-left: 0;
	}
	#top04 .fx-2col li {
		margin-top: 70px;
	}
	#voice-list.fx-4col li {
		margin-top: 20px;
	}
	#voice-list.fx-4col li .voice-thumbnail {
		height: calc(245vw/7);
		padding: calc(45vw/7) calc(35vw/7);
	}
	#top07 .h-director {
		width: 300px;
		margin: 0 auto;
		text-align: center;
	}
	#top09 iframe {
		margin: -1em 0 0;
	}
	.btn-back a {
		width: 100px;
	}
	.btn-prev a {
		width: 100px;
	}
	.btn-next a {
		width: 100px;
	}
	#article-nav {
		margin-top: 0;
	}
	#article-nav .fx-3col {
		padding: 0 0;
	}
	#footer-address .columns .two.columns{
		width: 14% !important;
		float: left !important;
		margin-left: 0 !important;
	}
	#footer-address .columns .two.columns img{
		max-width: 80px;
		width: 100%;
	}
	#footer-address .columns .ten.columns{
		width: 82% !important;
		float: left !important;
	}
	#footer-address #contact,
	#footer-address #access-name {
		text-align: center;
	}
	#footer-address #access-name {
		padding-top: 5px;
		font-size: calc(28vw/10);
		color: #193446;
	}
	#footer-address #access-name span {
		font-size: calc(44vw/10);
	}
	#footer-address span.biggest {
		font-size: 1.6rem;
	}
	#footer-address .sns-menu {
		position: absolute;
		bottom: -55px;
		left: 10px;
	}
	#footer-address .sns-menu img {
		width: 30px;
	}
}

@media (max-width: 375px) {
	#sp-site-name {
		font-size: 18px;
	}
	#top03 .fx-3col li a {
		max-width: 110px;
		left: calc(50% - 60px);
	}
	.btn-back a {
		width: 100px;
		font-size: 1.2rem;
		margin-left: -10px;
	}
	.btn-prev a {
		width: 75px;
		font-size: 1.2rem;
	}
	.btn-next a {
		width: 75px;
		font-size: 1.2rem;
	}
}


/*次へのアニメーション（スマホのみ？）*/
.goto-next {
	width: 100%;
	position: absolute;
	bottom: 0;
}
.goto-next a {
	display: block;
	text-align: center;
}
.scrollsign {
	width: 15px;
	height: 160px;
	position: relative;
	overflow: hidden;
	margin: 0 auto;
	color: #fff!important;
	font-size: 1rem;
}
/* アニメーション設定 */
.arrowWrap {
  position: absolute;
  right: 0;
  bottom: 0;
}

.arrow {
  width: 1px;
  height: 90px;
  margin: -5px auto 0;
  background-color: #eee;
  position: relative;
  overflow: hidden;
}

.arrow::before {
  content: '';
  width: 1px;
  height: 100px;
  margin: 50px auto 0;
  background-color: #000;
  position: absolute;
  top: -150px;
  left: 0;
  -webkit-animation: arrow 2.5s ease 0s infinite normal;
  animation: arrow 2.5s ease 0s infinite normal;
}

@keyframes arrow {
  0% {
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
  }

  60% {
    -webkit-transform: translate3d(-50%, 100px, 0);
    transform: translate3d(-50%, 100px, 0);
  }

  100% {
    -webkit-transform: translate3d(-50%, 100px, 0);
    transform: translate3d(-50%, 100px, 0);
  }
}





/*新着情報
---------------------------------------------- */
#news {}

#news li {
	list-style-type: none;
}

#news .date{
	color: #333;
	margin: -0.5em 4.2em 0.5em 0;
}

/*for Mobile*/
@media (max-width: 940px) {

}
@media (max-width: 767px) {
	#news {
		padding: 0 0 30px;
	}
	#news .date{
		margin: 1em 0 0 0;
		display: block;
	}
}


/* 各ページ共通スタイル
========================================================= */

/*ページタイトル
---------------------------------------------- */
.page-title {
	font-size: 2.6rem;
}
.page-title,
.page-time,
.page-caption {
	text-align: center;
}

#content h1.page-title {
	text-align: center;
	margin: 0 0 0;
	font-size: 3.2rem;
	padding-top: 0.5em;
}

#gallery h2.page-title {
	display: none;
}

.page-time {
	margin-bottom: 2em;
}

.page-time + h2,
.page-time + h3,
.page-time + h4 {
	padding-top: 0;
}

/*for Mobile*/
@media (max-width: 1024px) {
}
@media (max-width: 940px) {
}
@media (max-width: 767px) {
}
@media (max-width: 490px) {
}



/*パンくずナビ
---------------------------------------------- */
#pc-breadcrumb,
#sp-breadcrumb {
	height: 20px;
	padding: 3px 0 10px;
	margin-bottom: 50px;
}
#pc-breadcrumb {
	border-bottom: solid 1px #d2d2d2;
}
#sp-breadcrumb {
	display: none;
	background: #eeeeee;
}

.nav-path li{
	display: inline-block;
	float: none;
	font-size: 90%;
	line-height: 2;
}
.nav-path li:after{
	content: "＞";
}
.nav-path li:last-child:after {
	content: "";
}
.nav-path li:first-child{
	padding-left: 20px;
	background: url("images/home_icon.png") 0 50% no-repeat;
}
.nav-path li a{
	padding-right: 5px;
	color: #ff603f;
}

/*for Mobile*/
@media (max-width: 767px) {
	#pc-breadcrumb {
		display: none;
	}
	#sp-breadcrumb {
		display: block;
		margin-top: 30px;
	}
}




/*アイコン付きリスト
---------------------------------------------- */
.icon-list {
	margin-bottom: 1em;
}
.icon-list li {
	list-style-type: none;
	background: url("images/point-arrow.png") no-repeat 0.1em 0.5em;
	padding-left: 0.9em;
	line-height: 1.8;
}


/*for Mobile*/
@media (max-width: 767px) {

}


/*テーブル
---------------------------------------------- */
.table-list{
	width: 100%;
	border-top: 1px solid #ffc4c9;
	font-size: 0.9em;
}
.table-list th,
.table-list td{
	padding-left: 1em;
	text-align: left;
	border-bottom: 1px solid #ffc4c9;
}
.table-list tr:nth-child(n) {
	background-color: #fff4f5;
}
.table-list tr:nth-child(2n) {
	background-color: #fff;
}
.table-list th {
	background-color: #fff;
}

.table-list2 {
	width: 100%;
        box-sizing: border-box;
}
.table-list2 th,
.table-list2 td {
	padding-left: 1em;
	text-align: left;
	border: 1px solid #ccc;
}
.table-list2 tr:nth-child(n) {
	background-color: #efefef;
}
.table-list2 tr:nth-child(2n) {
	background-color: #fff;
}
.table-list2 thead th {
	background-color: #fff;
	text-align: center;
}
.table-list2 thead tr:nth-child(n) {
	background-color: #fff;
}

.table-ks {
	color: #185ac7;
	text-align: center;
	font-weight: bold;
}
.table-ks td {
	text-align: center;
}
.table-ks th {
	text-align: left !important;
	color: #333;
}
.table-ks tbody th {
	font-weight: normal;
}
@media (max-width: 767px) {
        .table-ks th, .table-ks td  {    
                padding: 3px 3px;
        }
}



/*ページトップへ
---------------------------------------------- */
.page-top {
	position: fixed;
	bottom: 80px;
	right: 0;
	z-index: 999;
	width: 60px;
	height: auto;
	filter: alpha(opacity=75);
	-moz-opacity: 0.75;
	opacity: 0.75;
}
.page-top a{
	display: block;
	width: 100%;
	text-align: center;
}
.page-top:hover {
	filter: alpha(opacity=95);
	-moz-opacity: 0.95;
	opacity: 0.95;
}

/*for Mobile*/
@media (max-width: 1280px) {
	.page-top {
		right: -1.5%;
	}
}
@media (max-width: 940px) {
}
@media (max-width: 767px) {
	.page-top {
		right: -2%;
		width: 44px;
		text-align: right;
	}
}

@media (min-width: 1336px) {
	.page-top {right: 3%;}
}




/* Footer
========================================================= */
#footer-banner {
	padding: 40px 0 25px;
}
#footer-banner .fx-2col li{
	margin-top: 25px;
}

#footer {
	background-color: #000;
	color: #fff;
}
#footer-nav {
	padding: 20px 0 30px;
}
#footer-nav ul {
	margin: 0 0 0 0;
	display: inline-block;
}
#footer-nav li a{
	line-height: 1.1;
	color: #fff;
}

#copyright {
	font-size:  12px;
	padding: 20px 0 30px;
	text-align: right;
}


/*for Mobile*/
@media (max-width: 940px) {
}
@media (max-width: 767px) {
	#footer.footer-fixed {
		position: fixed;
		bottom: 0;
		height: 70px;
		overflow: hidden;
		background-color: rgba(0,0,0,0.2);
		padding-top: 5px;
	}
	.footer-fixed .btn-tel {
		display: none;
	}

	#footer,
	#footer.footer-active {
		position: static;
		padding-top: 15px;
		bottom: auto;
		width: 100%;
		height: 100%;
		overflow: hidden;
		background-color: #4c4c4c;
	}
	#footer .container{
		width: 100%;
		padding: 0 0;
	}
	#footer-banner {
		padding: 5px 0 70px;
		margin-top: 0;
	}
	#footer-nav {
		padding: 20px 0 0;
		border-top: solid 1px #686868;
	}
	#footer-nav.nav-line li {
		width: 100%;
		margin-bottom: 20px;
	}
	#footer-nav.nav-line li a:hover{
		background-color: transparent;
		text-decoration: underline;
	}
	#copyright {
		border-top: solid 1px #686868;
		padding: 20px 0;
		text-align: center;
	}
	#footer-sp-help-menu li.btn-01,
	#footer-sp-help-menu li.btn-02 {
		width: 47.9%;
		display: inline-block;
		margin-top: 4px;
	}
	#footer-sp-help-menu li.btn-02 {
		margin-left: 1%;
		
	}
	#footer-sp-help-menu li.btn-01 a{
		background-position: calc(50% - 70px) calc(100% - 18px);
		/*text-indent: 1em;*/
	}
	#footer-sp-help-menu li.btn-02 a{
		background-position: calc(50% + 60px) calc(100% - 20px);
		/*text-indent: -1em;*/
	}
	
}



/* 各ページ：サービス内容
========================================================= */

#service-menu1 .n-columns,
#service-menu2 .n-columns {
	background: #eee;
	padding: 5px 30px 15px;
	margin-bottom: 20px;
	position: relative;
}
#service-menu1 .n-columns {
	min-height: 500px;
	margin-top: 40px;
}
#service-menu2 .n-columns {
	min-height: 320px;
	margin-bottom: 80px;
}
#service-menu1 .n-columns img,
#service-menu2 .n-columns img {
	max-width: 82%;
	position: absolute;
	bottom: 25px;
	right:28px;
}

#service-menu1 .n-columns h3,
#service-menu2 .n-columns h3 {
	color: #ff603f;
}


/*for Mobile*/
@media (max-width: 940px) {

}
@media (max-width: 767px) {
	#service-menu1 .n-columns,
	#service-menu2 .n-columns {
		background: none;
		padding: 0 20px 0;
		margin-bottom: 0;
	}
	#service-menu1 .n-columns,
	#service-menu2 .n-columns {
		min-height: auto;
		margin-top: 20px;
		margin-bottom: 30px;
	}
	#service-menu1 .n-columns img,
	#service-menu2 .n-columns img {
		max-width: 74%;
		position: static;
		margin: 10px 13%;
	}
	#service-menu1 .n-columns h3,
	#service-menu2 .n-columns h3 {
		padding: 1em 0;
	}
	
}



/* 各ページ：会社概要
========================================================= */
#company-info dt {color: #ff603f;}
#company-info dd {
	margin: -2em 0 2em 15em;
}


/*for Mobile*/
@media (max-width: 940px) {
}
@media (max-width: 767px) {
	#company-info dd {
		margin: 0 0 2em 0;
	}
}


/* 各ページ：制作実績
========================================================= */
.works-sub-menu {
	margin-left: -20px;
}
.works-sub-menu li {
	display: inline-block;
	list-style-type: none;
	margin-left: 20px;
}
.works-sub-menu li a{
	display: block;
	width: 136px;
	border: solid 1px #ff603f;
	color: #ff603f;
	text-align: center;
	line-height: 1.5;
}
.works-sub-menu li a:hover,
.works-sub-menu li.active a{
	background: url("images/main_bg.gif") ;
	color: #fff;
	text-decoration: none;
	transition-property: all;
	transition: 0.2s linear;
}


.works-list {
	margin-bottom: 20px;
}

.works-list .n-columns{
	border: solid 1px #eee;
	padding: 20px 30px;
	margin-bottom: 20px;
}
.work-item {
	display: table-cell;
	width: 250px;
	height: 250px;
	text-align: center;
	vertical-align: middle;
	margin-bottom: 20px;
}
.work-item a{
	display: inline-block;
	position: relative;
	width: 250px;
	height: auto;
}
.work-item.item-long a {
	width: auto;
	height: 240px;
}
.work-item.item-long a img{
	max-width: auto;
	max-height: 100%;
}
.work-txt {
	padding: 20px 10px 0;
	font-size: 90%;
	line-height: 1.8;
}
.work-txt em{
	font-weight: normal;
}
.icon-zoom {
	display: inline-block;
	width: 38px;
	height: 38px;
	background: url("../works/images/icon_zoom.png") no-repeat;
	position: absolute;
	bottom: -20px;
	right: -20px;
}
a:hover .icon-zoom {
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
	transition-property: all;
	transition: 0.2s linear;
}

a.tag {
	display: inline-block;
	padding: 0 10px;
	background: #ff603f;
	color: #fff;
	text-decoration: none;
	border-radius: 10px;
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
		-o-border-radius: 10px;
		-ms-border-radius: 10px;
	font-size: 90%;
	line-height: 1.6;
}
a.tag:hover {
	background: #fe856c;
}



/*for Mobile*/
@media (max-width: 940px) {
}
@media (max-width: 767px) {
	.works-sub-menu li {
		width: 42.5%;
	}
	.works-sub-menu li a{
		width: 100%;
	}

	.works-list .n-columns{
		padding: 20px 40px;
		margin-bottom: 20px;
	}
	.work-item {
		display: inline-block;
		width: 100%;
		height: auto;
	}
	.work-item a{
		display: inline;
		width: auto;
		height: auto;
	}
	.work-item.item-long a {
		height: auto;
	}

	.work-item.item-long {
		height: 240px;
	}

}



/* お問い合わせ：Forms
========================================================= */
#contact form .row{
	border-top: solid 1px #d2d2d2;
	padding: 30px 0 20px;
}
#contact form .row:first-child{
	margin-top: 60px;
}
#contact form .row:last-child{
	border-top: none;
	padding: 20px 0 20px;
}

#contact .form-item {
	font-weight: 600;
	color: #ff603f;
}
#contact .input-form .form-item {
	line-height: 46px;
}
#contact .confirm .row{
	padding-top: 20px;
}

#contact .form-item sup,
#contact .required {
	font-size: 85%;
	color: red;
}

#contact .error {color: red;}

#contact .button,button{color: #999;}

.main-btn,
.sub-btn,
.submit-btn {
	display: block;
	text-align: center;
	width: 100%;
	background: #666;
	color: #fff;
	border: none;
	font-size: 1.8rem;
	padding: 2em 0;
	min-height: 6em;
	border-radius: 2px;
}
#contact .main-btn {
	margin-left: 2em;
}
.main-btn:hover,
.sub-btn:hover,
.submin-btn:hover {
	background: #999;
	color: #fff;
	text-decoration: none;
}
.main-btn {background: #ff603f;}
.main-btn:hover {background: #fe856c;}
.submit-btn {background: #00a0e9;}
.submit-btn:hover {background: #2cbafb;}


select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding-right: 3em;
  background: url("images/down-arrow.png") 97% 50% no-repeat;
}
select::-ms-expand {
    display: none;
}

/*for Mobile*/
@media (max-width: 940px) {
}
@media (max-width: 767px) {
	#contact form .row{
		border-top: none;
		padding: 0 0 0;
	}
	#contact form .row:first-child{
		margin-top: 0;
	}
	#contact .form-item {
		margin: 20px 0 0;
	}
	#contact .input-form.form-item {
		line-height: 2;
	}
	.main-btn,
	.sub-btn,
	.submit-btn {
		font-size: 1.6rem;
		padding: 1em 0;
		min-height: 4em;
	}
	#contact .main-btn{
		margin-left: 10px;
	}
}



/* 各ページ：新着情報
========================================================= */
.news-index li {
	margin-bottom: 30px;
}

.news-number {
	text-align: center;
	margin: 100px 0 50px;
}
.news-number a,
.news-number span {
	display: inline-block;
	border: solid 1px #ff603f;
	padding: 5px 15px;
	border-radius: 2px;
	margin-bottom: 10px;
}
.news-number a {
	background: #ff603f;
	color: #fff;
}
.news-number a:hover {
	background: #fe856c;
	text-decoration: none;
}
.news-number a:first-child,
.news-number a:last-child {
	border: none;
	background: none;
	color: #ff603f;
}
.news-number a:first-child:hover,
.news-number a:last-child:hover {
	text-decoration: underline;
}
.news-number .active {
	background: #fff;
	color: #ff603f;
}


#content .entry-header h1{
	color: #ff603f;
	margin: 0 0 3em;
	padding-bottom: 5px;
	border-bottom: solid 2px #ff603f;
}
#content .entry-date {}

#content .entry-content h1,#content .entry-content h2,
#content .entry-content h3,#content .entry-content h4,
#content .entry-content h5,#content .entry-content h6 { margin: 2em 0;}
#content .entry-content p { margin: 2em 0;}
#content .entry-content ul,#content .entry-content ol { margin: 2em 0;}
#content .entry-content ul li {
	list-style-type: none;
	background: url("images/point-arrow.png") no-repeat 0.1em 0.6em;
	padding-left: 0.9em;
}

#content .entry-content table {}
#content .entry-content th,
#content .entry-content td {
	border: solid 1px #d2d2d2;
	padding: 1em;
}

#content .entry-content th {
	background: #f6f6f6;
}

#content .entry-content thead th {
	background: #ebebeb;
}
#content .entry-content thead td {
	border-top: none;
	border-left: none;
}


.nav-news-detail li{
	list-style-type: none;
	display: inline-block;
	padding: 1em;
}



/*for Mobile*/
@media (max-width: 940px) {
}
@media (max-width: 767px) {
	.news-number {
		margin: 0 0 30px;
	}
	.nav-news-detail {
		text-align: center;
	}
}




/*相談フォーム*/
#progress-meter {
	max-width: 400px;
	margin: 20px auto;
}
#progress-meter ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
}
#progress-meter ul li{
	text-align: center;
	position: relative;
}
#progress-meter li span{
	display: block;
	width: 50px;
	height: 50px;
	border-radius: 25px;
		-moz-border-radius: 25px;
		-webkit-border-radius: 25px;
		-o-border-radius: 25px;
		-ms-border-radius: 25px;
	background-color: #f6f5f4;
	margin: 0 auto;
	line-height: 48px;
}

#progress-meter li.progress-input:after{
	content: '';
	display: inline-block;
	background: #627178;
	height: 1px;
	width: 100px;
	position: absolute;
	top: 35% ;
	margin-left: 3px;
}

#progress-meter li.progress-confirm:after{
	content: '';
	display: inline-block;
	background: #f6f5f4;
	height: 1px;
	width: 100px;
	position: absolute;
	top: 35% ;
	margin-left: 3px;
}
.mw_wp_form_input li.progress-input span{
	background-color: #627178 !important;
	color: #fff;
}
.mw_wp_form_preview li.progress-input span,
.mw_wp_form_preview li.progress-confirm span{
	background-color: #627178 !important;
	color: #fff;
}

.mw_wp_form_complete li.progress-input span,
.mw_wp_form_complete li.progress-confirm span,
.mw_wp_form_complete li.progress-finish span {
	background-color: #627178 !important;
	color: #fff;
}
.mw_wp_form_complete li.progress-confirm:after{
	background: #627178 !important;
}


.mw_wp_form_input .confirm-text,
.mw_wp_form_preview .intro-text{
	display: none;
}
.mw_wp_form_preview .confirm-text{
	display: block;
}

.mw_wp_form_input label{
	display: block;
}

.mw_wp_form_preview label{
	display: block;
	width: 32%;
	float: left;
}
.mw_wp_form_preview .answer{
	display: block;
	width: 68%;
	float: left;
}

.mw_wp_form_preview .three.columns,
.mw_wp_form_preview .nine.columns{
	width: 100%;
	margin-left: 0;
}
.mw_wp_form_preview .three.columns br,
.mw_wp_form_preview .nine.columns br {
	display: none;
}

.mw_wp_form_input .short-title,
.mw_wp_form_preview .long-title,
.mw_wp_form_preview .required,
.mw_wp_form_preview .privacypolicy {
	display: none;
}
.mw_wp_form_preview .short-title{
	display: inline-block;
}


.mw_wp_form_preview .question {
	border-top: solid 1px #f6f5f4;
	padding: 15px 0;
}
.mw_wp_form_preview .question:after{
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}


input[type="email"], input[type="number"], input[type="search"], input[type="text"], input[type="tel"], input[type="url"], input[type="password"], textarea, select {
	background-color: #f8f7f3;
	border: none;
	width: 100%;
	padding: 10px 20px;
}
input[name="age"]{
	width: 6em;
}
.mwform-radio-field{
	display: inline-block;
	padding-top: 8px;
}
.mwform-radio-field-text{
	margin-right: 2em;
}

.mwform-checkbox-field input[type="checkbox"]{
	display: none;
}
.mwform-checkbox-field {
	font-size: 1.5rem;
	position: relative;
	line-height: 1;
	margin: 20px 0 5px 5px !important;
}
.mwform-checkbox-field label{
	cursor: pointer;
	padding-left: 1.8em;
}
.mwform-checkbox-field label::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1em;
	height: 1em;
	text-align: center;
	border: solid 1px #c6c4c4;
}

.mwform-checkbox-field input:checked + .mwform-checkbox-field-text{
	color: #000;
}
.mwform-checkbox-field input:checked + .mwform-checkbox-field-text::after{
	content: "";
	display: block;
	position: absolute;
	top: -5px;
	left: 5px;
	width: 7px;
	height: 14px;
	transform: rotate(40deg);
	border-bottom: 3px solid #e79689;
	border-right: 3px solid #e79689;
}

label[for="symptom"] + .answer{
	display: inline-block;
	margin-bottom: 1em;
}
.mw_wp_form_preview label[for="symptom"] + .answer{
	margin-bottom: 0;
}


.required{
	display: inline-block;
	background-color: #e79689;
	color: #fff;
	font-size: 1rem;
	line-height: 1.2;
	border-radius: 3px;
		-moz-border-radius: 3px;
		-webkit-border-radius: 3px;
		-o-border-radius: 3px;
		-ms-border-radius: 3px;
	padding: 2px 8px;
	margin-top: -1px;
}
.mw_wp_form .error{
	color: #d1766d !important;
}


.mw_wp_form .row .columns{
	padding-bottom: 1em;
}

input.submit-button,
input.back-button {
	font-size: 1.6rem;
	padding: 0.9em 0.4em;
	box-sizing: border-box;
	width: 45%;
	height: auto;
	margin: 30px 5px 0;;
	border-color: #000;
	border-radius: 0;
}
input.submit-button {
	background-color: #e79689;
	color: #fff;
	border: none;
}
input.submit-button:hover,
input.back-button:hover {
	background-color: #f1c0b8;
	color: #fff;
	transition-property: all;
	transition: 0.2s linear;
}
.mw_wp_form_preview .btn-section br{
	display: none;
}

.mw_wp_form_input input.submit-button {
	width: 100%;
}


@media (max-width: 480px) {
	.mw_wp_form_preview .longanswer label{
		width: 100%;
		margin-bottom: 1em;
	}
	.mw_wp_form_preview .longanswer .answer{
		width: 100%;
	}
}


/*ローディングアニメーション*/
.loading {
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,1.0);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 20000;
}

.loading img {
	width: 40px;
	height: 40px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -20px;
	margin-left: -20px;
}


/*Font Awesome*/
.wc-shortcodes-one-fourth > i.fa {font-size: 2em; font-weight: 900;display: block;text-align: center;}




/*お知らせのウィジット*/
#news-aside {
	margin-left: -1%;
}

#news-aside .widget {
	width: 24%;
	float: left;
	margin-left: 1%;
}
#news-aside .screen-reader-text {
	display: none;
}


/*for Mobile*/
@media (max-width: 940px) {
}
@media (max-width: 767px) {
	#news-aside {
		margin-left: 0;
	}
	#news-aside .widget {
		width: 100%;
		clear: both
		margin-left: 0;
	}
}

.top .news-title {font-weight: bold;font-size: 105%;}



/*試用版ダウンロード*/
#download .page-title { display: none;}



/*Shortcodes by Angie Makes*/
#content .wc-shortcodes-full-width {
	visibility: visible;
}
#content .shadow-box {
	padding: 30px 20px;
	background-color: #ffffff;
	box-shadow: 0px 6px 18px 0px rgba(0,0,0,0.15);
}

.fa-5x {
    font-size: 5em;
}

/*以前のバージョン*/
#content .previous_versions table{
        width: 90%;
        table-layout: fixed;
        margin-left: 2em;
}
#content .previous_versions table th{
        text-align: center;
}
#content .previous_versions table td{
        text-align: center;
}