@import url("reset.css");
@import url("common.css");

/* org */
body{background-color:#f2f2f2;
font-family:'游明朝',"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",'HGS明朝E',
'メイリオ','Meiryo',serif; font-size:14px; color:#333; font-weight:200;}
a,a:hover,a:visited,a:active{text-decoration:none;}
a{color:#333;}
a:hover{color:#888;}
.cpttvWrap *{box-sizing:border-box;}

/* header */
header{width:100%; margin:0 auto; text-align:center;}
header .headerInner{max-width:1200px; padding-top:56px; width:100%; margin:0 auto; position:relative;}
header .headerInner .fixMenu{position:absolute; top:8px; right:0; display:flex; justify-content:flex-end;
align-items:flex-end;}
.gsc-control-cse{padding:0!important; background-color:transparent!important; border:none!important;}
.gsc-search-button.gsc-search-button-v2{background-color:#e2e2e2!important; border:none!important;
padding:6px 12px!important;}
.form.gsc-search-box{margin-bottom:0;}
.gsc-search-box-tools .gsc-search-box .gsc-input{padding-right:2px;}
.gSearch .gsc-results-wrapper-overlay{width:75vw!important; height:inherit!important;
right:0!important; left:auto!important;}
.gSearch .gscb_a{line-height:20px;}
header .headerInner .fixMenu>a{display:inline-block; padding:4px 8px; background-color:#e2e2e2;
font-size:12px; margin-right:4px; border-radius:4px; cursor:pointer;}
header .headerInner .fixMenu p{display:inline-block; font-size:12px; margin-left:8px; line-height:160%;}
header .headerInner .fixMenu .gSearch{width:240px; transform:translateY(3px); margin-left:12px;
position:relative; z-index:9999;}
header .headerInner .fixMenu .gSearch form.gsc-search-box,
header .headerInner .fixMenu .gSearch table.gsc-search-box{margin-bottom:0;}
header .headerInner .fixMenu .gSearch .gsib_a{padding:2px 9px;}
header .headerInner .fixMenu .gSearch .gsc-search-box-tools .gsc-search-box .gsc-input{padding-right:0;}
header .headerInner .fixMenu .gSearch .gsc-search-button-v2 svg{fill:#333;}

header .headerTitle{width:100%; z-index:100;
display:flex; justify-content:center; align-items:center; padding:12px 0 20px;}
header .headerTitle>a{width:160px; display:block; margin-right:24px;}
header .headerTitle>a>img{width:100%; display:block;}
header .headerTitle h1{padding-top:20px;}
header .headerTitle h1>a{display:block; width:100%; font-size:1.75em;
/*text-shadow:0 0 8px rgba(0,0,0,0.25);*/ color:#000;}

header .headerInner>ul{display:flex; flex-wrap:wrap; justify-content:center; align-items:center;
margin-top:16px;}
header .headerInner>ul>li{padding:12px 0; width:19.2%; margin-right:1%; position:relative; line-height:125%;
display:flex; flex-wrap:wrap; justify-content:center; align-items:center;
border-radius:22px; background:#f2f2f2; box-shadow:4px 4px 4px #ccc,-4px -4px 4px #fff;}
header .headerInner>ul>li:before{content:''; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
height:1px; width:75%; background-color:#19B0E7;}
header .headerInner>ul>li:last-child{margin-right:0;}
header .headerInner>ul>li>a{display:block; width:100%; height:100%;}
header .headerInner>ul>li>a span{display:block; width:100%; padding-top:12px;}
header .headerInner>ul>li>ul{display:none; width:105%; position:absolute; top:90%; left:-2.5%; z-index:100;
background-color:rgba(255,255,255,0.9); padding:24px 4px;
border-radius:22px; background:#f2f2f2; box-shadow:4px 4px 4px #ccc,-4px -4px 4px #fff;}
header .headerInner>ul>li>ul>li{text-align:center; margin-bottom:12px;}
header .headerInner>ul>li>ul>li:last-child{margin-bottom:0;}
header .headerInner>ul>li>ul>li>a{font-size:12px; letter-spacing:-0.5px;}
header .headerInner>ul>li:hover>ul{display:block;}
header .imageSlider{width:100%; text-align:center; margin-top:0px; position:relative;}
header .imageSlider .swiper-slide>a img{display:block; width:100%; position:relative;}
header .imageSlider .swiper-slide>a:hover img{opacity:1;}
/*header .imageSlider .swiper-slide>a:after{content: ''; position:absolute; top: 0; left:0; width:100%; height:100%;
z-index:100; background-repeat:repeat; background-image:url(../img/patter.png); opacity:0.75;}*/
header .imageSlider p{position:absolute; bottom:24px; right:24px; z-index:9999; text-align:right;
color:#fff; font-size:1em; line-height:150%; text-shadow:0 0 8px rgba(0,0,0,0.75);
background-color:rgba(0,0,0,0.5); padding:8px 16px; box-shadow: 0 0 16px -4px rgba(0,0,0,0.75);}
header .imageSlider a.highreso:after{display:none;}

.gallery-thumbs{height:80px; box-sizing:border-box; padding:10px 0 0;}
.gallery-thumbs img{display:block; width:100%;}
.gallery-thumbs .swiper-slide {width:250px; height:100%; opacity:0.4;}
.gallery-thumbs .swiper-slide-thumb-active {opacity:1;}

/* common */
.commonHeading{width:100%; margin-top:32px; text-align:center;}
.commonHeading h2,.commonHeading h3{display:inline-block; font-size:1.5em; border-bottom:1px solid #666;
padding:0 12px 6px; margin-bottom:24px;}
.cpttvWrap .section{padding-top:32px;}

/* project detail */
.projectDetail p{width:100%; max-width:960px; margin:0 auto; text-align:justify;
line-height:200%; letter-spacing:2px; font-size:1em;}

/* news */
.cpttvNews{width:100%; max-width:960px; margin:40px auto 0; text-align:center; padding-top:80px;}
.cpttvNews ul{padding:32px 40px; background-color:#e2e2e2;}
.cpttvNews ul li{width:100%; margin-bottom:32px;}
.cpttvNews ul li:last-child{margin-bottom:0;}
.cpttvNews ul li a{text-align:left; display:flex; position:relative; font-size:1.1em;
padding-left:140px; line-height:175%;}
.cpttvNews ul li a span{position:absolute; left:0;
display:block; width:140px; text-align:left; margin-right:16px; font-size:0.9em;}


/* outline */
.outlineInner{width:100%; max-width:1200px; margin:0 auto;}
.outlineInner p.proOutDetail{width:100%; max-width:960px; margin:0 auto 48px auto; text-align:center;
font-size:1.25em; line-height:200%;
box-sizing: border-box;
	padding: 0 20px;
}
ul.outlineField{margin:32px 0;}
ul.outlineField>li{text-align:center; margin-bottom:120px; display:flex; flex-wrap:wrap;
justify-content:space-between; align-items:center;}
ul.outlineField>li>h3{display:block; font-size:1.5em; color:#fff; width:100%; background-color:#19B0E7;
padding:16px; box-shadow:8px 8px 16px -4px rgba(25,176,231,0.5); margin-bottom:40px;}
ul.outlineField>li>img{display:block; width:33%; margin-right:2%;}
ul.outlineField>li>p{width:65%; font-size:1.35em; line-height:250%; height:100%;
text-align:justify; background-color:transparent; padding:0 40px; display:flex;}
ul.outlineField>li>ul{display:flex; flex-wrap:wrap; justify-content:center; margin-top:40px;}
ul.outlineField>li>ul>li{width:49%; padding:0 16px; margin-right:2%;}
ul.outlineField>li>ul>li:last-child{margin-right:0%;}
ul.outlineField>li>ul>li>h4{font-size:1.25em; font-weight:700; line-height:175%;}
ul.outlineField>li>ul>li>p{margin:24px 0 16px; line-height:175%; text-align:justify;}
ul.outlineField>li>ul>li>ul>li{width:100%; margin-bottom:24px; background-color:#e2e2e2;
box-shadow:4px 4px 0px #ccc; padding:12px; line-height:150%; text-align:justify;}
ul.outlineField>li>ul>li>p.notice{color:#575757; letter-spacing:-0.5px; font-size:0.9em;}

ul.outlineField>li.aword>p{
	width: 100%;
  line-height: 1.8;
  display: block;
}
ul.outlineField>li.aword>p + p {
  margin-top: 20px;
}

/* database */
.projectDatabase{width:100%; max-width:1200px; margin:0 auto;}
.projectDatabase .section{margin-bottom:120px;}
.dbInner .dbHead{position:relative; width:100%; margin:0 auto;max-width:960px;}
.dbInner .dbHead img{display:block; width:100%; position:relative;}
.dbInner .dbHead:after{content:''; position:absolute; left:0; top:0; width:100%; height:100%;
background-color:rgba(0,0,0,0.35); z-index:10;}
.dbInner .dbHead .dbTitle{position:absolute; top:50%; left:50%;
transform:translate(-50%,-50%); width:90%; padding:16px; z-index:100;}
.dbInner .dbHead .dbTitle h3{display:block; font-size:1.25em; margin-bottom:8px; color:#fff; font-size:1.5em;}
.dbInner .dbHead .dbTitle p{color:#fff; text-align:justify; text-shadow:0 0 8px rgba(255,255,255,0.3);
font-size:1.25em; line-height:175%;}
.dbInner .dbDetail{width:100%; max-width:960px; display:flex; align-items:flex-start; margin:16px auto 0; flex-wrap:wrap;}
.dbInner .dbDetail img{display:block; width:60px; height:64.5px;
box-shadow:0 0 16px -4px rgba(0,0,0,0.25);}
.dbInner .dbDetail p{position:relative; text-align:left; line-height:200%;
padding-left:48px; margin-left:16px; width:calc(100% - 76px);}
.dbInner .dbDetail span{position:absolute; left:0;}
ul.dbList{display:flex; flex-wrap:wrap; justify-content:center; align-items:center; margin-top:24px;}
ul.dbList li{width:19.2%; position:relative; margin-right:1%;}
ul.dbList li:last-child{margin-right:0;}
ul.dbList li a img{display:block; width:100%;}
ul.dbList li a img:after{content:''; position:absolute; top:0; left:0; width:100%; height:100%;
z-index:100; background-color:rgba(0,0,0,0.5);}
ul.dbList li a p{position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
text-align:center; line-height:150%; color:#fff; font-weight:500; width:100%; text-shadow:0 0 8px rgba(0,0,0,0.75);
background-color:rgba(0,0,0,0.35); height:100%; display:flex; align-items:center; justify-content:center;}

.dbInner .endExp{text-align:center; margin-top:40px; display:flex;}
.dbInner .endExp p{margin-right:16px;}
.dbInner .endExp span{display:inline-block; margin-right:8px; text-shadow:1px 1px 2px #ccc;}
.dbInner .endExp p:nth-child(1) span{color:#eef;}
.dbInner .endExp p:nth-child(2) span{color:#fff;}
.dbInner table{width:100%; margin-top:24px; background-color:#fff; border:1px solid #ccc;
}
.dbInner table tr{width:100%; border-bottom:1px solid #ccc; background-color:#fff;}
.dbInner table tr.dbEnd{background-color:#eef;}
.dbInner table tr th,.dbInner table tr td{padding:12px 8px;
border-right:1px solid #ccc; font-size:0.95em; font-weight:500;}
.dbInner table tr th{background-color:#e2e2e2; line-height:150%;
vertical-align:middle; font-size:0.85em; letter-spacing:-0.5px;}
.dbInner table tr td.dbListA,.dbInner table tr td.dbListB,
.dbInner table tr td.dbListC{width:40px; text-align:center; padding:8px 0!important;}
.dbInner table tr td a{display:inline-block; margin-left:8px; letter-spacing:1px; color:#fff;
background-color:#333; padding:4px;}
.dbInner p.dbYear{margin-top:80px; margin-bottom:8px; text-align:center; font-size:1.5em;}
.dbInner p.dbYear:first-child{margin-top:0;}
.dbInner table tr.dbSubTitle{background-color:#333; color:#fff; padding:4px 8px;}
/*
.dbInner table tr th,.dbInner table tr td{width:32px;}
.dbInner table tr th,.dbInner table tr td{width:15%;}
.dbInner table tr th,.dbInner table tr td{width:56px;}
.dbInner table tr th,.dbInner table tr td{width:56px;}
.dbInner table tr th,.dbInner table tr td{width:30%;}
.dbInner table tr th,.dbInner table tr td{width:auto;}
*/
.dbInner table tr p{border-right:1px solid #888; padding:8px 4px 8px 4px; font-size:0.85em; letter-spacing:-0.5px;}
.dbInner table tr p:last-child{border-right:none;}
.dbLink{text-align:center; margin:40px 0 80px;}
.dbLink a{display:inline-block; background-color:#333; color:#fff; padding:12px 24px; line-height:150%;
box-shadow:4px 4px 0px 0 #ccc;}

/* outline */
main .topMainContents h4{ padding:8px 16px; margin-bottom:16px;
background-color:#009C88; display:block; text-align:center;
box-shadow:8px 8px 16px -4px rgba(0,156,135,0.35); border-radius:4px;}
main .topMainContents h4 span{display:inline-block; color:#fff; letter-spacing:4px; font-size:1.25em;
position:relative;}
main .topMainContents h4 span:after{content:''; position:absolute; left:-24px; top:0px;
background-image:url(img/check.png); background-size:100%; width:16px; height:16px;}
main .topMainContents>p{margin:0 auto 40px; text-align:center; font-size:1.25em; line-height:200%;}

/* pamphlet */
.cpttvPamphlet{width:100%; max-width:960px; margin:0 auto; display:flex; flex-wrap:wrap;}
.cpttvPamphlet ul{margin:40px auto; width:auto;}
.cpttvPamphlet.cpttvPamphletEn ul{margin-left:80px;}
.cpttvPamphlet li{margin-bottom:64px;}
.cpttvPamphlet li h3{margin-bottom:16px; font-size:1.25;}
.cpttvPamphlet li a{display:flex; flex-wrap:wrap;}
.cpttvPamphlet li a img{display:block; width:64px;height: 64px;}
.cpttvPamphlet li a p{width:auto; margin-left:10px; line-height:175%; letter-spacing:-0.5px;}
.cpttvPamphlet .pampImg{text-align:center; margin:40px 0 24px; width:25%;}
.cpttvPamphlet .pampImg img{width:100%; box-shadow:4px 4px 16px -4px rgba(0,0,0,0.25);}


/* contents common */
.contBlock{width:100%; max-width:1200px; margin:0 auto 80px;
}
.contBlock>p{margin-top:32px; line-height:200%; text-align:justify;}
.contBlock>p>span{display:block; margin:24px 0 8px; font-weight:900;}
.newsBox{margin:40px 0 120px;}
.newsBox h3{text-align:center; font-size:1.5em; line-height:175%;
padding: 0 20px;
}
.newsBox p{max-width:1000px; margin:24px auto 0; line-height:200%; text-align:justify;
font-size:1.1em;
padding: 0 20px;}
.newsBox p span{display:block; text-align:right; margin-bottom:16px;}
.newsBox a{display:block; margin-top:16px; text-align:right;}
br.marginBR{margin-bottom:24px; display:block;}

/* footer */
footer{background-color:#19B0E7; width:100%; margin-top:120px;}
footer *{color:#fff;}
footer .footerInner{width:100%; max-width:1200px; padding:24px 0 12px; margin:0 auto; text-align:center;}
footer .footerInner>ul{width:100%; margin-top:12px;
display:flex; justify-content:center; align-items:center;}
footer .footerInner>ul>li{margin:0 16px 32px; text-align:center;
/* padding:4px 16px; background-color:#fff;box-shadow:1px 1px 1px 0 #eee;*/}
footer .footerInner>ul>li>a{display:inline-block; border-bottom:1px solid #fff; padding:0 4px 0;}
footer .footerInner .footerInfo{margin-bottom:32px;}
footer .footerInner .footerInfo p{line-height:200%; text-align:center; margin-bottom:40px;}
footer .footerInner .footerInfo ul{display:flex; justify-content:center; margin:32px 0;}
footer .footerInner .footerInfo ul li{margin:0 0.5%;}
footer .footerInner .footerInfo ul li a{padding:4px 12px; background-color:#fff; color:#19B0E7;}
footer a:hover{opacity:0.7; color:#fff;}



/*===============================================================
	
	weska 2020/12/14
	
===============================================================*/
.small {
	font-size: 80%;
	vertical-align: baseline;
}

.contact_box a,
.contBlock a {
	text-decoration: underline;
}

.container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}
.narrow {
	width: 100%;
	max-width: 800px;
	margin-right: auto;
	margin-left: auto;
}
.headline {
	font-size: 1.4em;
	line-height: 1.4;
	text-align: center;
	margin-top: 30px;
}
.box + .headline {
	margin-top: 80px;
}
.read {
	font-size: 1em;
	line-height: 2;
	margin-top: 20px;
}
.box {
	border: solid 1px #ccc;
	padding: 40px 40px;
	margin-top: 50px;
	box-shadow: 5px 5px 20px 0 rgba(0,0,0,0.1);
}
.datalist {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
	font-size: 1.1em;
	line-height: 1.8;
	border-top: solid 1px #ccc;
	margin-top: 30px;
}
.datalist dt,
.datalist dd {
	border-top: solid 1px #ddd;
	padding: 20px 0;
}
.datalist dt:nth-child(1),
.datalist dt:nth-child(1) + dd {
	border-top: solid 0px #ddd;
}
.datalist dt {
	width: 150px;
	font-weight: bold;
}
.datalist dd {
	width: calc(100% - 150px);
	position: relative;
}
.datalist .company_name {
	padding-left: 100px;
}
.datalist .company_name.nologo {
	padding-left: 0;
}
.datalist dd .logo {
	position: absolute;
	left: 0;
	top: 0; bottom: 0;
	margin: auto;
	height: 40px;
}
.datalist dd .logo img {
	height: 40px;
	width: auto;
}
.datalist a {
	text-decoration: underline;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
.box {
	margin-left: 20px;
	margin-right: 20px;
}
}/* for tablet max-width: 960px */
/* タブレット以下 */
@media screen and (max-width: 840px) {
.read {
	padding: 0 20px;
}
}/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.headline {
	padding:0 20px;
}
.box + .headline {
	margin-top: 50px;
}
.box {
	margin-left: 20px;
	margin-right: 20px;
	padding:20px;
/*	padding-top: 0;*/
	margin-top: 20px;
/*	border:0;*/
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
}
.datalist {
	padding: 0 0;
/*	padding-top: 0;*/
	margin-top: 20px;
	border:0;
	border-top: solid 1px #ccc;
}
.datalist dt {
	width: 100%;
	font-weight: bold;
	padding: 20px 0 0 0;
}
.datalist dd {
	border-top: 0;
	width: 100%;
	padding: 10px 0 20px 0;
}
.datalist dd .logo {
	height: 8vw;
	top: 2.5vw;
	bottom: auto;
}
.datalist dd .logo img {
	height: 8vw;
	width: auto;
}
.datalist .company_name {
	padding-left: 20vw;
}
.datalist .company_name .small{
	display: block;
}
}/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.datalist .photo_block
-------------------------------------------------------------*/
.datalist .photo_block {
	float: right;
	width: 35%;
	margin-left: 20px;
	text-align: center;
}
.datalist .photo_block img {
	width:100%; height: auto;
}
.datalist .photo_block .caption {
	font-size: 100%;
	margin: 0;
	font-size: 80%;
}
/* タブレット以下 */
@media screen and (max-width:1200px) {
.datalist .photo_block {
	width: 40%;
	margin-left: 30px;
}
}/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 900px) {
.datalist .photo_block {
	width: 100%;
	margin-left: 0vw;
	margin-bottom: 5vw;
}
}/* for SP max-width: 736px */

/*===============================================================
	
	archive_list
	
===============================================================*/
.archive_list {
	margin-top: 100px;
}
.archive_list .archive_title {
	text-align: center;
	font-size: 1.8rem;
/*	border-top: solid 1px #666;*/
	padding-top: 50px;
	padding: 20px;
	background: #444;
	color: #fff;
}
/*
.archive_list .box {
	padding: 15px;
	max-width: 800px;
}
*/
.archive_list .headline {
	margin-top: 50px;
}


/* タブレット以下 */
@media screen and (max-width: 960px) {

}/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.archive_list {
	margin-top: 50px;
}
.archive_list .archive_title {
/*	padding-top: 30px;*/
}
}/* for SP max-width: 736px */


/*===============================================================
	
	company_title
	
===============================================================*/
.company_title {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	align-items: center;
}
.company_title .company {
	margin-top: 0;
	font-size: 1.4em;
	line-height: 1.6;
	text-align: left;
}
.company_title .company .link a {
	margin-top: 15px;
	font-size: 0.8em;
	line-height: 1.6;
}
.company_title .logo {
	width: 20%;
	max-width: 250px;
	padding-right: 20px;
}
.company_title .logo img {
	width:100%; height: auto;
}

.company_title .company .title {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	align-items: center;
}
.company_title .company .title .icon img {
	width: 40px;
	height: auto;
	margin: 0;
	margin-right: 10px;
	vertical-align: top;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.company_title .logo {
	width: 100%;
	max-width: inherit;
	padding-right: 0;
	margin: 0 auto;
	background: #fff;
	text-align: center;
}
.company_title .logo img {
	width: 50%;
	height: auto;
	margin: 0 auto;
}
.company_title .company {
	font-size: 1.4em;
}
.company_title .logo + .company {
	margin-top: 3vw;
}
}/* for SP max-width: 736px */

/*===============================================================
	
	relation_link
	
===============================================================*/
.relation_link {
	max-width: 1000px;
	margin: 0 auto;
	text-align: right;
	padding: 0 20px;
}
.relation_link p {
	text-align: right;
	margin-top: 30px;
	font-weight: bold;
	padding: 0;
}
.relation_link a {
	text-align: right;
	margin-top: 30px;
	line-height: 1.3;
	word-wrap: break-word;
}
.relation_link * + a {
	margin-top: 10px;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}/* for SP max-width: 736px */


header .imageSlider {
	display: none;
}
.toppage header .imageSlider {
	display: block;
}


/*===============================================================
	
	PC/SP/TABLET
	
===============================================================*/
.sp {
	display:none;
}
.pc {
}
.tablet {
	display:none;
}
.sp {
	display:none;
}
.sp_tablet {
	display:none;
}
/* タブレット以下 */
@media screen and (max-width: 1070px) {
.pc {
	display:none;
}
.tablet,
.pc_tablet,
.sp_tablet {
	display:block;
}
}	/* for tablet max-width: 1070px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
.sp {
	display:block;
}
.pc_tablet,
.tablet {
	display:none;
}
}	/* for SP max-width: 800px */


/*===============================================================
	
	txtlink
	
===============================================================*/
.txtlink a {
	position: relative;
	padding-left: 1em;
}
.txtlink a::after{
	content:'';
	position:absolute;
	top: 0; bottom: 0; left: 0;
	margin: auto;
	border:solid 1px #19b0e7;
	width:5px;
	height:5px;
	border-top:none;
	border-left:none;
	transform: rotate(-45deg) translate(-1px,-1px);
	transition: all 0.3s;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}/* for SP max-width: 736px */


/*===============================================================
	
	txtbox
	
===============================================================*/
.txtbox {
	margin-top: 30px;
}
.txtbox .title {
	font-size: 120%;
	padding-top: 1.5em;
	border-top: solid 1px #999;
}
.txtbox p {
	line-height: 1.8;
	margin-top: 0.5em;
}
.txtbox .title + p{
	margin-top: 1em;
}
.box + .txtbox {
	margin-top: 60px;
}

/* タブレット以下 */
@media screen and (max-width: 840px) {
.txtbox {
	padding: 0 20px;
}
}/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}/* for SP max-width: 736px */


/*===============================================================
	
	box_title
	
===============================================================*/
.box_title {
	background: #575757;
	color: #fff;
	text-align: center;
	padding: 30px;
	font-size: 150%;
	width: calc(100% + 80px);
	margin-top: -40px;
	margin-left: -40px;
	line-height: 1.4;
}
.box h4 {
}
.box * + p {
	margin-top: 0.5em;
}
.box * + h4 {
	margin-top: 1.5em;
	padding-top: 1.5em;
	border-top: dashed 1px #ccc;
}
.box_title + .datalist {
	margin-top: 0;
	border-top: 0;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.box_title {
	padding: 15px;
	font-size: 120%;
	width: calc(100% + 40px);
	margin-top: -20px;
	margin-left: -20px;
}
}/* for SP max-width: 736px */

/*===============================================================
	
	contact_box
	
===============================================================*/
.contact_box {
	border: solid 1px #ddd;
	padding: 30px;
	margin-top: 50px;
}
.contact_box p {
	line-height: 1.8;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}/* for SP max-width: 736px */


/*===============================================================
	
	page_kv
	
===============================================================*/
.page_kv {
	max-width: 1200px;
	margin: 0 auto;
	margin-top: 0;
}
.page_kv img {
	width:100%; height: auto;
}

/*===============================================================
	
	utils
	
===============================================================*/
.align_center {
	text-align: center;
}
/* Margin-top */
.mt0 {
	margin-top: 0 !important;
}
.mt5 {
	margin-top: 5px !important; 
}
.mt10 {
	margin-top: 10px !important;
}
.mt15 {
	margin-top: 15px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt25 {
	margin-top: 25px !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt35 {
	margin-top: 35px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt45 {
	margin-top: 45px !important;
}
.mt50 {
	margin-top: 50px !important;
}
.mt60 {
	margin-top: 60px !important;
}


/*===============================================================
	
outline
	
===============================================================*/
.outlineInner .yusen_theme {
  width: 60%;
  margin: 0 auto;
  margin-top: 30px;
}
.outlineInner .yusen_theme h4 {
  font-size:1.25em; 
  font-weight:700; 
  line-height:175%;
}
.outlineInner .yusen_theme h4 + p {
  line-height: 1.8;
  text-align: left;
  margin-top: 20px;
}

.outlineInner .yusen_theme_wrp {
  width:100%; 
  background-color:#e2e2e2;
  box-shadow:4px 4px 0px #ccc; 
  padding:20px; 
  line-height:150%; 
  text-align:justify;
  margin-top: 10px;
}
.outlineInner .yusen_theme_wrp + .yusen_theme_wrp {
  margin-top: 20px;
}
.outlineInner .yusen_theme_wrp p {
  line-height: 1.8;
}
.outlineInner .aword a {
  border-bottom: 1px solid #333;
}
.outlineInner .aword a:hover {
  border-bottom: 1px solid #ccc;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.outlineInner .yusen_theme {
  width: 100%;
  margin-top: 10vw;
}
}/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}/* for SP max-width: 736px */