@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

body {
	margin: 0;
	padding: 0;
	color: #333;
	line-height: 150%;
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background-color: #fff;
}

h1, h2, h3, h4, h5, h6 {
	margin: 0;
	padding: 0;
}

p {
	margin: 0;
}

ul li {
	margin: 0;
	padding: 0;
	list-style: none;
	display: list-item;
}

img {
	border: 0;
	vertical-align: bottom;
	line-height: 0;
}

a img {
	border: 0;
}

a {
	transition: .3s;
}

a:link {
	color: #161f3a;
	text-decoration: none;
}

a:visited {
	color: #161f3a;
	text-decoration: none;
}

a:hover {
	color: #161f3a;
	text-decoration: none;
}

a:active {
	color: #161f3a;
}

/* 配置
--------------------------------*/
.t-align-r {
	text-align: right
}

.t-align-l {
	text-align: left;
}

.t-align-c {
	text-align: center;
}

/*クリア、クリアフィックス
--------------------------------*/
.clear {
	clear: both;
}

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	line-height: 0;
	visibility: hidden;
}

.clearfix {
	display: inline-block;
}

/*表示切り替え
--------------------------------*/
/*PC*/
@media print, screen and (min-width: 960px) {
	.hidden-pc {
		display: none !important;
	}

	body, html {
		font-size: 15px;
	}
}

/*SP*/
@media print, screen and (max-width: 959px) {
	.hidden-sp {
		display: none !important;
	}

	body, html {
		font-size: 4vw;
	}
}

/*背景
--------------------------------*/
.bgdot {
	width: 100%;
	height: 100%;
	background-repeat: repeat;
	position: absolute;
	z-index: -1
}

/*ボタン
--------------------------------*/
a.btn {
	display: block;
	font-weight: bold;
	text-align: center;
	padding: 1em 2.5em;
	background-repeat: no-repeat;
	background-position: left 1.6em center;
	background-size: .8em auto;
	border-radius: 2em;
	margin: 2em auto;
}

a.btn_w {
	color: #364394;
	background-color: rgba(255, 255, 255, 1);
	background-image: url(../images/common/ic_arrow_b.png);
}

a.btn_w_b {
	color: #364394;
	background-color: rgba(255, 255, 255, 1);
	background-image: url(../images/common/ic_arrow_bl.png);
}

a.btn_b {
	color: #fff;
	background-color: rgba(54, 68, 147, 1);
	background-image: url(../images/common/ic_arrow_w.png);
}

@media print, screen and (min-width: 960px) {
	a.btn {
		width: 290px;
		font-size: 18px
	}

	a.btn_w:hover, a.btn_w_b:hover {
		background-color: rgba(255, 255, 255, .8);
	}

	a.btn_b:hover {
		background-color: rgba(54, 68, 147, .5);
	}
}

@media print, screen and (max-width: 959px) {
	a.btn {
		width: 80%;
		min-width: 260px;
		font-size: 4vw
	}

	a.btn_w:active, a.btn_w_b:active {
		background-color: rgba(255, 255, 255, .8);
	}

	a.btn_b:active {
		background-color: rgba(54, 68, 147, .5);
	}
}

/* header
-----------------------------------*/
/*PC*/
.header {
	clear: both;
	width: 100%;
	position: fixed;
	top: 0;
	padding: 0;
	z-index: 9999;
	background-repeat: repeat-x;
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(255, 255, 255, 1)));
	background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 100%);
	background-image: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 100%);
	background-image: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 100%);
	background-image: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 100%);
	background-image: linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 100%);
}

#header #logo {
	padding-left: 30px;
}

.header .login a {
	line-height: 100%;
	white-space: nowrap;
	display: block;
	color: #fff;
	background-color: #364394;
	font-weight: bold;
	border-radius: 2em;
	box-shadow: 0 0 4px 2px rgba(0, 0, 0, .15);
}

.header .login a.add {
	background-color: #c18d66;
}

@media print, screen and (min-width: 960px) {
	#header {
		min-width: 1124px;
		height: 114px;
		overflow: hidden;
		background-size: 100% 100px;
	}

	#header #logo {
		float: left;
		width: 216px;
		margin: 0;
		padding: 0 0 0 20px;
	}

	#header #logo a {
		transition: .3s;
	}

	#header #logo a:hover img {
		filter: brightness(150%);
	}

	/*ナビメニュー*/
	ul.navi {
		right: 20px;
		bottom: 5px;
		margin: 0;
		display: block;
		position: absolute;
		overflow: hidden;
	}

	ul.navi li {
		float: left;
		position: relative;
		display: block;
		margin-right: 2.4em;
		height: 108px;
	}

	ul.navi li:last-of-type {
		margin-right: 0
	}

	ul.navi li.here a {
		pointer-events: none;
	}

	.kaso2 ul.navi li.here a {
		pointer-events: auto;
	}

	ul.navi li.here a::after {
		background-position: center bottom;
		opacity: 1
	}

	ul.navi li a {
		margin-top: 2.5em;
		display: block;
		color: #161f3a;
		font-weight: bold;
		transition: .3s;
	}

	ul.navi li a::after {
		display: block;
		position: absolute;
		bottom: 0;
		content: '';
		height: 44px;
		width: 100%;
		transition: .4s;
		background-image: url(../images/common/ic_menuon.png);
		background-repeat: no-repeat;
		background-position: center bottom 10px;
		background-size: 38px 44px;
		opacity: 0
	}

	ul.navi li a:hover {
		color: #364394;
	}

	ul.navi li a:hover::after {
		background-position: center bottom;
		opacity: 1;
	}

	.header .login a {
		margin-top: 1.8em;
		padding: .8em 2.2em;
		color: #fff;
	}

	ul.navi li.login a:hover {
		opacity: .8;
		color: #fff;
	}

	ul.navi li.login a::after {
		background-image: none;
	}
}

@media screen and (min-width: 960px) and (max-width: 1124px) {
	#header {
		min-width: 1024px;
	}

	#header #logo {
		padding-left: 8px;
	}

	ul.navi {
		right: 12px;
	}

	ul.navi li {
		margin-right: 1em;
	}

	.header .login a {
		font-size: 14px;
		margin-top: 2em;
		letter-spacing: -.05em;
		padding: .7em 1em;
	}
}

/*SP*/
@media print, screen and (max-width: 959px) {
	#headersp {
		height: 60px;
		background-size: 100% 50px;
	}

	#headersp #logo img {
		height: 60px;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 5px;
		z-index: 1;
	}

	#ic_menu {
		position: absolute;
		right: 10px;
		top: 0;
		bottom: 0;
		margin: auto;
		padding-top: 8px;
	}

	.menu-trigger,
	.menu-trigger span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}

	.menu-trigger {
		position: relative;
		width: 38px;
		height: 31px;
		margin: 0 auto;
		padding: 0;
	}

	.menu-trigger span {
		position: absolute;
		left: auto;
		right: auto;
		margin: auto;
		width: 100%;
		height: 5px;
	}

	.menu-trigger span:nth-of-type(1) {
		top: 0;
		background-color: #364394;
	}

	.menu-trigger span:nth-of-type(2) {
		top: 50%;
		bottom: 50%;
		background-color: #4664ae;
	}

	.menu-trigger span:nth-of-type(3) {
		bottom: 0;
		background-color: #5788c9;
	}

	.menu-trigger.active span:nth-of-type(1) {
		transform: translateY(13px) rotate(-45deg);
	}

	.menu-trigger.active span:nth-of-type(2) {
		opacity: 0;
	}

	.menu-trigger.active span:nth-of-type(3) {
		transform: translateY(-13px) rotate(45deg);
	}

	.header .login {
		position: absolute;
		display: block;
		right: 58px;
		bottom: 10px;
		height: 42px;
		margin: auto;
	}

	.header .login a {
		font-size: 14px;
		position: relative;
		max-height: 36px;
		padding: .6em .8em;
		text-align: center;
		letter-spacing: -1px;
		margin: auto;
		width: 7.4em;
		float: left;
	}

	.header .login a img {
		width: .7em;
		height: auto;
		margin-right: .2em;
		vertical-align: middle;
	}

	.header .login a.add {
		margin-right: .5em;
		width: 6.4em;
	}

	#menu_sp {
		display: none;
		clear: both;
		margin: 0;
		height: 100vh;
		background-position: left top 50px;
		background-repeat: repeat-x;
		background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, .75)), color-stop(100%, rgba(0, 0, 0, .75)));
		background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, .75) 0%, rgba(0, 0, 0, .75) 100%);
		background-image: -moz-linear-gradient(top, rgba(0, 0, 0, .75) 0%, rgba(0, 0, 0, .75) 100%);
		background-image: -ms-linear-gradient(top, rgba(0, 0, 0, .75) 0%, rgba(0, 0, 0, .75) 100%);
		background-image: -o-linear-gradient(top, rgba(0, 0, 0, .75) 0%, rgba(0, 0, 0, .75) 100%);
		background-image: linear-gradient(top, rgba(0, 0, 0, .75) 0%, rgba(0, 0, 0, .75) 100%);
	}

	#menu_sp ul {
		margin: 50px 0 0 0;
		display: block;
		overflow: hidden;
	}

	#menu_sp ul li {
		list-style: none;
		display: block;
		position: relative;
		background: #364394; /* Old browsers */
		background: -webkit-gradient(linear, left left, left right, color-stop(0%, #364394), color-stop(90%, #326cad));
		background: -webkit-linear-gradient(left, #364394 0%, #326cad 90%);
		background: -moz-linear-gradient(left, #364394 0%, #326cad 90%);
		background: -ms-linear-gradient(left, #364394 0%, #326cad 90%);
		background: -o-linear-gradient(left, #364394 0%, #326cad 90%);
		background: linear-gradient(to right, #364394 0%, #326cad 90%);
		margin-bottom: 1px;
	}

	#menu_sp ul li a {
		display: block;
		color: #fff;
		padding: 1em;
		font-size: 110%;
		line-height: 100%;
		background-size: 6vw 2.4vw;
		background-image: url(../images/common/ic_arrow_sp.png);
		background-repeat: no-repeat;
		background-position: center right .8em;
	}
}

@media print, screen and (max-width: 320px) {
	.header .login a {
		width: 4.5em;
		float: left;
		zoom: 1;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
		outline: 0 !important;
		position: relative;
	}

	.header .login a.add {
		width: 4.5em;
	}
}

/*動き*/
.mv_fadein, .mv_faslidein_l, .mv_faslidein_t {
	transition: .8s;
}

.mv_fadein {
	opacity: 0;
	transition: .8s;
}

.mv01 {
	opacity: 1.0;
}

.mv_faslidein_l {
	opacity: 0;
	transform: translateX(-20px);
}

.mv02 {
	opacity: 1.0;
	transform: translateX(0);
}

.mv_faslidein_t {
	opacity: 0;
	transform: translateY(30px);
}

.mv03 {
	opacity: 1.0;
	transform: translateY(0);
}

/*メイン*/
#main {
	height: auto !important;
	clear: both;
	display: block;
	overflow: hidden;
	position: relative;
}

.wrap {
	clear: both;
	margin: 0 auto;
	display: block;
	position: relative;
}

@media print, screen and (min-width: 960px) {
	#main {
		margin: 100px auto 0 auto;
		padding: 0;
	}

	.wrap {
		width: 1024px;
		padding: 60px 0;
	}

	div:nth-last-child(2) .wrap {
		width: 1024px;
		padding: 60px 0 140px 0;
	}
}

@media print, screen and (max-width: 959px) {
	#main {
		margin: 50px auto 0 auto;
		padding: 0;
	}

	.wrap {
		width: 100%;
		padding: 3em .8em;
	}

	div:nth-last-child(2) .wrap {
		padding: 3em .8em 6em .8em;
	}
}

/*タイトル・サブタイトル*/
section.titlearea {
	padding: 0 0 4.5em 0;
	overflow: hidden;
	position: relative;
}

section.titlearea > * {
	font-weight: bold;
	text-align: center;
}

section.titlearea h1 {
	font-size: 240%;
	line-height: 130%;
	color: #fff;
	margin-bottom: 1em;
	text-shadow: 0 0 5px rgba(0, 0, 0, .2);
}

section.titlearea div.border,
.subtitlearea div.border {
	position: relative;
	margin: 0 auto auto;
	background-color: #fff;
}

section.titlearea div.border {
	width: 70%;
	min-width: 290px;
	height: 2px;
	border-radius: 2px;
}

.subtitlearea div.border {
	width: 300px;
	height: 1px;
}

section.titlearea div.border::after,
.subtitlearea div.border::after {
	content: ' ';
	height: 0;
	position: absolute;
	width: 0;
	border-style: solid;
	border-color: #fff transparent transparent transparent;
	border-width: 10px 14px 0 14px;
	top: 100%;
	left: 50%;
	margin-left: -14px;
}

.subtitlearea {
	margin-bottom: 40px;
}

.subtitlearea h2 {
	font-size: 110%;
	line-height: 100%;
	width: 100%;
	text-align: center;
	color: #fff;
	margin-bottom: 1em;
}

.descarea {
	margin: 43px 0 40px;
	font-size: 17px;
	line-height: 28px;
	text-align: center;
}

@media print, screen and (max-width: 959px) {
	section.titlearea {
		padding: 0 0 2.5em 0;
	}

	section.titlearea h1 {
		font-size: 180%;
	}

	section.titlearea p {
		font-size: 125%;
		margin: .8em auto;
	}

	section.titlearea div.border,
	.subtitlearea div.border {
		width: 80%;
		max-width: 300px
	}

	.subtitlearea {
		margin-bottom: 2em;
	}

	.subtitlearea div.border {
		width: 66%;
	}

	.descarea {
		margin: 20px 0 20px;
		font-size: 4vw;
		line-height: 150%;
	}
}

/*フッタメニュー*/
#f-menu {
	overflow: hidden;
	margin: 0 auto;
	text-align: center;
	color: #fff;
	z-index: -1;
}

#f-menu ul {
	margin: 0 auto 10px auto;
	display: inline-block;
}

#f-menu ul li {
	font-size: 80%;
	float: left;
	text-align: center;
	margin-right: 1em;
}

#f-menu ul li a {
	color: #333;
	font-weight: bold;
	padding: 0 1.5em .8em 1.5em;
	border-bottom: 2px dotted #365094;
	transition: .3s;
}

#f-menu ul li a:hover {
	color: #365094;
	border-bottom: 2px solid #46a;
}

/*フッタ*/
#footer {
	position: relative;
	overflow: hidden;
	background-repeat: no-repeat;
	margin: -10px auto 0 auto;
	text-align: center;
	background-position: bottom;
	color: #fff;
	z-index: 20;
}

#copy {
	font-size: 75%;
	margin: 0;
	display: inline-block;
	background-image: url(../images/common/footer_ic.png);
	background-repeat: no-repeat;
}

#copy {
	margin: 0;
	display: inline-block;
}

@media print, screen and (min-width: 960px) {
	#footer {
		height: 6em;
		background-image: url(../images/common/footer_bg.jpg);
		background-size: 100% 5.5em;
	}

	#copy {
		padding: 3.5em 0 2.5em 6em;
		background-size: 5.5em auto;
	}
}

@media print, screen and (max-width: 959px) {
	#footer {
		height: 4em;
		background-image: url(../images/common/footer_bg_sp.jpg);
		background-size: 100% 3.7em;
	}

	#copy {
		padding: 2em 0 1em 4em;
		background-size: 4em auto;
	}
}

/*画面上部へ戻る
-----------------------------------*/
#pagetop {
	display: block;
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 9998;
}

#pagetop a {
	text-align: center;
	width: 4em;
	height: 4em;
	display: block;
	background-color: rgba(255, 255, 255, .8);
	border-radius: 2em;
	padding: 1em;
	border-right: none;
	box-shadow: 0 0 4px 1px rgba(0, 0, 0, .15);
}

#pagetop a img {
	height: auto;
	transform: rotate(-90deg);
	border-left: dotted 1px #35669e;
}

#pagetop a img {
	width: 1.2em;
}

@media print, screen and (min-width: 960px) {
	#pagetop a:hover {
		background-color: rgba(255, 255, 255, 1);
	}
}

@media print, screen and (max-width: 959px) {
	#pagetop {
		bottom: 60px;
		right: 10px;
	}

	#pagetop a:active {
		background-color: rgba(255, 255, 255, 1);
	}
}

label {
	cursor: pointer;
}

input[type="radio"] {
	width: auto !important;
}

.width-auto {
	width: auto !important;
}

.text-center {
	text-align: center;
}

/* mv
-----------------------------------*/
#mv {
	margin: auto;
	position: relative;
	text-align: center;
	display: block;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 1;
	color: #fff;
}

.bgdot {
	z-index: 0
}

#mv .bgdot01 {
	background-image: url(../images/common/bg_dot_bl30.png);
}

#mv .title {
	margin-top: 1em;
}

#mv h1 {
	color: #fff;
	margin: .7em;
	line-height: 200%;
}

#mv h1.asp {
	margin: .6em;
}

#mv h1 span {
	font-size: 80%;
}

#mv p {
	line-height: 180%;
	margin-bottom: 3em;
}

#mv h1, #mv p {
	text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
}

/*PC*/
@media print, screen and (min-width: 960px) {
	/*mv*/
	#mv {
		background-image: url(../images/index/top_mv_pc.jpg);
		background-position: center center;
	}

	#mv .wrap {
		width: 1200px;
	}

	#mv .title img {
		height: 65px;
	}

	#mv h1 {
		font-size: 36px;
	}

	#mv h1 span {
		font-size: 80%;
	}

	#mv h1.asp {
		font-size: 42px;
	}

	#mv p {
		font-size: 21px;
	}
}

@media screen and (min-width: 960px) and (max-width: 1024px) {
	/*mv*/
	#mv .wrap {
		width: 1024px;
	}

	#mv h1 {
		font-size: 32px;
	}

	#mv h1.asp {
		font-size: 38px;
	}
}

@media print, screen and (max-width: 959px) {
	.bgdot {
		z-index: -1
	}

	#mv {
		position: relative;
		overflow: hidden;
		background-image: url(../images/index/top_mv_sp.jpg);
	}

	#mv .title img {
		width: 80%;
	}

	#mv h1 {
		font-size: 5vw;
		line-height: 180%;
	}

	#mv h1.asp {
		font-size: 6.5vw;
	}

	#mv p {
		line-height: 200%;
		font-size: 3vw
	}
}

/*共通
-----------------------------------*/

/*タイトル*/
#main .wrap h2 {
	text-align: center;
	font-size: 32px;
}

@media print, screen and (max-width: 959px) {
	#main .wrap h2 {
		font-size: 6vw;
	}
}

/*メディア向け
-----------------------------------*/
#t_media {
	background-color: #35669e;
	color: #f3f3f3
}

#t_media .wrap {
	text-align: center;
	padding-bottom: 0;
}

#t_media h2 {
	color: #fff;
	line-height: 150%;
	margin-bottom: .6em;
}

#t_media h3 {
	color: #f2e8d7;
	font-size: 28px;
	line-height: 150%;
	font-weight: normal;
	margin-bottom: 1em;
}

#t_media .ss {
	display: block;
	position: relative;
	overflow: hidden;
	padding: 0;
	box-shadow: 0 0 4px 2px rgba(0, 0, 0, .15);
}

#t_media .ss img {
	width: 100%;
	height: auto;
}

#t_media .ss p {
	display: block;
	padding: 2em 1.5em 5em 1.5em;
	position: absolute;
	overflow: hidden;
	color: #365094;
	background-color: rgba(255, 255, 255, .7);
	z-index: 1;
	bottom: -4.7em;
	left: 1em;
	border: 2px solid #365094;
	border-radius: 7em;
	font-size: 85%;
	line-height: 1.3em;
}

#t_media .text {
	text-align: left;
	overflow: hidden;
}

#t_media p {
	line-height: 180%;
	margin-bottom: 1em;
}

#t_media p:last-child {
	margin-bottom: 0;
}

#t_media a.detail_w {
	color: #fff;
	float: right;
	font-weight: bold;
	margin: .5em 0;
}

#t_media a.detail_w img {
	border-left: dotted 1px #fff;
	height: .9em;
	margin-right: .4em;
	vertical-align: middle;
	width: auto;
}

#t_media .btnarea {
	background-color: #35669e;
	background-image: url(../images/common/bg_dot_db.png);
	background-repeat: repeat;
	padding: .8em 0;
	z-index: 1;
}

@media print, screen and (min-width: 960px) {
	#t_media .wrap {
		width: 1200px
	}

	#t_media ul.lay {
		display: block;
		overflow: hidden;
		clear: both;
	}

	#t_media ul.lay li {
		float: left;
	}

	#t_media .ss {
		width: 582px;
		height: auto;
	}

	#t_media .text {
		width: 600px;
		font-size: 115%;
		padding: 0 0 0 1.5em
	}
}

@media screen and (min-width: 960px) and (max-width: 1024px) {
	/*mv*/
	#t_media .wrap {
		width: 1024px;
	}

	#t_media .ss {
		width: 500px;
		height: auto;
	}

	#t_media .text {
		width: 500px;
		font-size: 115%;
		padding: 0 0 0 1.5em
	}

	#t_media p {
		line-height: 150%;
	}
}

@media print, screen and (max-width: 959px) {
	#t_media h3 {
		font-size: 5vw;
	}

	#t_media .text {
		margin: 0 0 1em 0;
	}
}

/*広告主向け
-----------------------------------*/
#t_add {
	background-color: #f3e9da;
	position: relative;
	overflow: hidden;
}

#t_add h2 {
	color: #365094;
	line-height: 150%;
}

#t_add h3 {
	color: #705c4b;
	display: block;
	line-height: 180%;
	padding: 0;
	margin-bottom: .7em;
	text-align: center
}

#t_add p {
	font-weight: 100;
	line-height: 180%;
}

#t_add .graphic01 {
	text-align: center;
}

#t_add .graphic01 img {
	width: 100%;
	margin: 0;
}

#t_add img.shadow {
	width: 100%;
	margin: 0 auto 3em auto;
}

#t_add .graphic02 {
	display: block;
	position: relative;
	overflow: hidden;
	clear: both;
	text-align: center;
	padding: 1em 0;
}

#t_add .graphic02 img {
	height: auto;
}

#t_add a.detail_b {
	display: block;
	color: #364394;
	text-align: center;
	font-weight: bold;
	margin: 3em auto;
}

#t_add a.detail_b img {
	border-left: dotted 1px #364394;
	height: .9em;
	margin-right: .4em;
	vertical-align: middle;
	width: auto;
}

@media print, screen and (min-width: 960px) {
	#t_add {
		background-image: url(../images/index/top_add_bg_pc.jpg);
		background-repeat: no-repeat;
		background-size: cover;
		background-position: top right;
	}

	#t_add h2 {
		margin-bottom: 1em;
	}

	#t_add h3 {
		font-size: 135%;
	}

	#t_add p {
		font-size: 120%;
	}

	#t_add .graphic01 {
		margin: 2em auto 0 auto;
	}

	#t_add .graphic02 {
		margin: 1em auto 2em auto;
	}

	#t_add .graphic02 img {
		width: 180px;
		margin-right: 24px;
	}

	#t_add .graphic02 img:last-of-type {
		margin-right: 0;
	}

	#t_add .graphic02 img:nth-of-type(2n-1) {
		padding-bottom: 100px;
	}

	#t_add .graphic02 img:nth-of-type(2n) {
		padding-top: 100px;
	}
}

@media print, screen and (max-width: 959px) {
	#t_add {
		background-image: url(../images/index/top_add_bg_sp.jpg);
		background-repeat: repeat-y;
		background-size: contain;
	}

	#t_add h2 {
		margin-bottom: .6em;
	}

	#t_add h3 {
		font-size: 100%;
	}

	#t_add p {
		font-size: 90%;
	}

	#t_add .graphic01 {
		margin: 1em auto 0 auto;
	}

	#t_add .graphic02 {
		margin: 1em auto;
	}

	#t_add .graphic02 img {
		width: 28vw;
		margin-right: 3vw
	}

	#t_add .graphic02 img:nth-of-type(3), #t_add .graphic02 img:nth-of-type(5) {
		margin-right: 0
	}
}

/*ニュース
-----------------------------------*/
#t_news {
	position: relative;
	overflow: hidden;
	background-color: #f7f7f7;
	z-index: 0
}

#t_news h2 {
	color: #666;
	line-height: 150%;
	margin-bottom: .6em;
}

#t_news ul {
	overflow: hidden;
	display: block;
	margin: 1em auto 0 auto;
	background-color: #fff;
	border: solid 3px #365094;
}

#t_news ul li {
	clear: both;
	position: relative;
	overflow: hidden;
	text-align: left;
	vertical-align: top;
	padding-bottom: 1em;
}

#t_news ul li:last-of-type {
	padding-bottom: 0;
}

#t_news li span {
	display: block;
	letter-spacing: 1px;
	color: #777;
	font-weight: normal;
	margin-right: 1.5em
}

@media print, screen and (min-width: 960px) {
	#t_news .wrap {
		line-height: 200%;
	}

	#t_news h2 {
		font-size: 32px;
		margin-bottom: 1em;
	}

	#t_news ul {
		width: 840px;
		padding: 3em;
	}

	#t_news ul span {
		float: left;
		min-width: 6em;
	}

	#t_news li p {
	}
}

@media print, screen and (max-width: 959px) {
	#t_news {
		z-index: -1
	}

	#t_news h2 {
		margin-bottom: .6em;
	}

	#t_news ul {
		padding: 1.5em;
	}

	#t_news li h3 {
		font-weight: bold;
		font-size: 120%;
		letter-spacing: 1px;
	}

	#t_news li .graphic {
		width: 50%;
		margin: 1em auto;
	}

	#t_news li h4 {
		font-size: 120%;
		margin: 1em auto;
	}

	#t_news li p {
		line-height: 150%;
	}
}
