/*==================
	reset
==================*/
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)	*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
/*==================
	base
==================*/
*, *:before, *:after {
  box-sizing: border-box;
}
body {
  font-size: 16px;
  line-height: 1.6;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  color: #000;
  counter-reset: number 0;
}
a {
  color: inherit;
  text-decoration: none;
  transition: all ease .3s;
}
a:hover {
  text-decoration: none;
  opacity: .6;
}
img {
  width: 100%;
  vertical-align: middle;
}
input {
  margin: 0;
  padding: 0;
}
textarea {
  padding: 0;
  font: inherit;
  color: inherit;  
}
button {
  font: inherit;  
  padding: 0;
  background-color: transparent;
  border: none;
  color: inherit;  
  cursor: pointer;
}
.c-btn{
	border: 4px solid #1664b2;
	border-top-right-radius: 10px;
	border-bottom-left-radius: 10px;
	text-decoration: none;
	color: #000;
	background: #fff;
	font-size: 20px;
	line-height: 1.4;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	box-shadow: 5px 5px 0 #1664b2;
	transition: ease all .3s;
	padding: .6em;
	font-size: 18px;
}
.c-btn:hover{
	transition: ease all .3s;
	margin-top: 5px;
	margin-bottom: -5px;
	box-shadow: none;
}
.c-btn__sripe--blue{
	font-size: 20px;
	background-size: auto auto;
	background-color: rgba(255, 255, 255, 1);
	background-image: repeating-linear-gradient(135deg, transparent, transparent 2px, rgba(225, 239, 251, 1) 2px, rgba(225, 239, 251, 1) 6px );
}
@media screen and (min-width: 768px){
	.c-btn{
		font-size: 24px;
	}
	.c-btn__sripe--blue{
		font-size: 30px;
	}
}
.c-btn__round{
	border-radius: 100px;
}
/*==================
	wrapper continner
==================*/
.l-wrapper{
	width: 100%;
	margin: 0;
	padding: 0;
	position: relative;
}
.l-contwrap{
	width: 100%;
	margin: 0;
	padding-bottom: 3em;
	background-size: auto auto;
	background-color: rgba(255, 255, 255, 1);
	background-image: repeating-linear-gradient(135deg, transparent, transparent 2px, #f2f2f2 2px, #f2f2f2 6px );
}
.l-continner{
	width: calc( 100% - 4em );
	margin: 0 auto;
}
@media screen and (min-width: 768px){
	.l-continner{
	width: 1100px;
	}
}
/*==================
	header
==================*/
/*==================
	top
==================*/
.p-top .l-header{
	width: 100%;
	background-image: url("../img/tit_img.png"),url("../img/tit_bg.png");
	background-repeat: no-repeat , repeat;
	background-size: contain ,auto;
	background-position:right top , left top;
	padding: 2.4em 1em;
	text-align: center;
}
.p-top .l-header__inner{
	width: 100%;
}
.p-top .l-header__title{
	width: 60%;
}
.p-top .l-header__lead{
	display: none;
}
.p-top .l-header + .l-header__lead{
	display: block;
	width: calc( 100% - 2em );
	margin: 1em auto 0;
}
@media screen and (min-width: 768px){
	.p-top .l-header{
		width: 1100px;
	}
	.p-top .l-header__inner{
		width: 1100px;
		max-width: none;
		margin: 0 auto;
		text-align: left;
	}
	.p-top .l-header__title{
		width: 630px;
		max-width: none;
	}
	.p-top .l-header__lead{
		display: block;
		width: 630px;
		max-width: none;
		background: rgba(255,255,255,.7);
		padding: 1em;
		border-radius: 10px;
	}
	.p-top .l-header + .l-header__lead{
		display: none;
	}
}
@media screen and (min-width: 1100px){
	.p-top .l-header{
		width: 100%;
	}
}
@media screen and (min-width: 1260px){
	.p-top .l-header{
		background-size: 50% ,auto;
	}
}
/*==================
	sections
==================*/
.p-sections .l-header{
	width: 100%;
	background-image: url("../img/tit_bg.png");
	background-repeat: repeat;
	background-size: auto;
	background-position:left top;
	padding: 2.4em 1em;
	text-align: center;
}
.p-sections .l-header__inner{
	width: 100%;
}
.p-sections .l-header__title{
	width: 60%;
	max-width: 300px;
	margin: 0 auto;
}
@media screen and (min-width: 768px){
	.p-sections .l-header__inner{
		width: 1100px;
		max-width: none;
		margin: 0 auto;
		text-align: left;
	}
	.p-sections .l-header__title{
		width: 500px;
		max-width: none;
	}
}
/*==================
	nav
==================*/
/*==================
	nav top
==================*/

.c-nav__top{
	width:100%;
	padding: 1em 1em 3em;
	display: flex;
	flex-wrap: wrap;
}
.c-nav__top .c-nav__item--section,
.c-nav__top .c-nav__item--pdf{
	width:100%;
	margin-right: 0;
	margin-top: .5em;
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}
.c-nav__top .c-nav__item--section:nth-child(2n),
.c-nav__top .c-nav__item--pdf:nth-child(2n){
	margin-right: 0;
}
.ptenrit{
	display:none;
}

@media screen and (min-width: 480px){
	.c-nav__top .c-nav__item--section{
		width: calc( (90% - 20px) / 2 );
		margin-right: 20px;
		margin-top: 1em;
	}
	.c-nav__top .c-nav__item--section:nth-child(2n){
		margin-right: 0;
	}
	.c-nav__top .c-nav__item--pdf{
		margin-top: 1em;
		width: calc( (90% - 20px) / 2 );
		margin-right: 20px;
	}
	.c-nav__top .c-nav__item--pdf:nth-of-type(2n){
		margin-right: 0;
	}
	.ptenrit{
		width:100%;
		display: inline-block;
		vertical-align: top;
		text-align: right;
		right:8em;
		top:1em;
		position: relative;
	}
	.ptenrit img{
		display: inline-block;
		width: 18%;
		position: absolute;
	}
}
@media screen and (min-width: 768px){
	.c-nav__top{
		width: 950px;
		margin: 0 auto;
	}
	.c-nav__top .c-nav__item--section{
		width: calc( (90% - 60px) / 4 );
		margin-right: 20px;
	}
	.c-nav__top .c-nav__item--section:nth-of-type(2n){
		margin-right: 20px;
	}
	.c-nav__top .c-nav__item--section:nth-of-type(4){
		margin-right: 0px;
	}
	.ptenrit{
		width:100%;
		display: inline-block;
		vertical-align: top;
		right:10em;
		top:1em;
		position: relative;
		text-align: right;
	}
	.ptenrit img{
		display: inline-block;
		width: 10%;
		position: absolute;
	}
}
/*==================
	nav bottom
==================*/
.c-nav__bottom{
	width: 100%;
	padding: 1em 1em 2em;
	display: flex;
	flex-wrap: wrap;
	margin-top: 0;
}
.c-nav__bottom .c-nav__item--section,
.c-nav__bottom .c-nav__item--pdf{
	width: 100%;
	margin-right: 0;
	margin-top: .5em;
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}
.c-nav__bottom .c-nav__item--section:nth-child(2n),
.c-nav__bottom .c-nav__item--pdf:nth-child(2n){
	margin-right: 0;
}
@media screen and (min-width: 480px){
	.c-nav__bottom .c-nav__item--section{
		width: calc( (100% - 20px) / 2 );
		margin-right: 20px;
		margin-top: 1em;
	}
	.c-nav__bottom .c-nav__item--section:nth-child(2n){
		margin-right: 0;
	}
	.c-nav__bottom .c-nav__item--pdf{
		margin-top: 1em;
		width: calc( (100% - 20px) / 2 );
		margin-right: 20px;
	}
	.c-nav__bottom .c-nav__item--pdf:nth-of-type(2n){
		margin-right: 0;
	}
}
@media screen and (min-width: 768px){
	.c-nav__bottom{
		width: 1100px;
		margin: 0 auto;
		padding: 1em 1em 3em;
	}
}
/*==================
	totop btn
==================*/
.c-totop__area{
	width: 100%;
	padding: 1em 1em 2em;
}
.c-totop__btn{
	background:#fff;
	border: 4px solid #aaaaaa;
	box-shadow: 5px 5px 0 #aaaaaa;
	width: 100%;
	max-width: 450px;
	margin: 0 auto;
}
/*==================
	content
==================*/
/*==================
	section
==================*/
.l-section__caption{
	width: 100%;
	background: #1664b2;
	text-align: center;
	color: #fff;
	font-size: 30px;
	padding: 0.5em 1em;
}
.l-section__capinner{
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.l-section__capinner span{
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	position: relative;
}
@media screen and (min-width: 768px){
	.l-section__caption{
		font-size: 50px;
	}
	.l-section__capinner{
		width: 1100px;
		margin-left: auto;
		margin-right: auto;
	}
}
/*==================
	top
==================*/
.p-top .l-section__caption{
	display: flex;
	justify-content: center;
	align-items: center;
}
.p-top .l-section__capmedal{
	width: 90px;
	margin-right: 10px;
}
@media screen and (min-width: 768px){
	.p-top .l-section__capmedal{
		width: 123px;
	}
}
/*==================
	sections
==================*/
.p-sections .l-section__caption{
	padding: .8em 1em;
}
.p-sections .l-section__capinner span:before{
	content: "";
	width: 100%;
	height: 1px;
	background: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
}
.p-sections .l-section__capinner span:after{
	content: "";
	width: 50px;
	height: 50px;
	background: url("../img/icon_pen.svg") left bottom no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 0;
	right: -50px;
}
@media screen and (min-width: 768px){
	.p-sections .l-section__capinner span:after{
		width: 80px;
		height: 80px;
		right: -80px;
	}
}

/*==================
	continner
==================*/
.l-continner__lead{
	width: 100%;
	text-align: center;
	margin-top: 1em;
}
/*==================
	works list
==================*/
.c-works__list{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items:stretch;
	margin-top: 1em;
}
.c-works__section{
	background: #1664b2;
	color: #fff;
	font-size: 20px;
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	padding: .5em 1em;
	text-align:center;
	margin-bottom: 1em;
}
.c-works__item{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: flex-start;
	align-items:stretch;
	padding: 1.5em 2em;
	background: #fff;
	margin-top: 1em;
}
.c-works__item .c-works__lightbox{
	border: 1px solid #ccc;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
.c-works__prof{
	text-align: center;
	margin-top: 1em;
	font-size: 22px;
	font-weight: 700;
}
.c-works__prof--area{
	display: block;
	font-size: 16px;
}
@media screen and (min-width: 768px){
	.c-works__list{
		width: 1000px;
		margin-left: auto;
		margin-right: auto;
	}
	.c-works__item{
		margin-top: 2em;
		margin-right: 40px;
	}
	.c-works__item:nth-of-type(4n){
			margin-right: 0;
		}
	.c-works__item:last-of-type{
			margin-right: auto;
		}
	.c-works__prof{
		font-size: 30px;
	}
	.c-works__prof--area{
		font-size: 20px;
	}
	.c-works__section{
		font-size: 24px;
	}
}
/*==================
	top
==================*/
@media screen and (min-width: 640px){
	.p-top .c-works__item{
		width: calc( ( 100% - 50px ) / 2 );
	}
}
@media screen and (min-width: 768px){
	.p-top .c-works__item{
		width: calc( ( 100% - 100px ) / 2 );
	}
}
/*==================
	sections
==================*/
.p-sections .c-works__item{
	position: relative;
	justify-content: space-between;
	padding: 1.5em;
}
.p-sections .c-works__medal{
	width: 70px;
	position: absolute;
	top: -15px;
	left: -10px;
}
.p-sections .c-works__medal + .c-works__prof{
	margin-left: 40px;
}
.p-sections .c-works__prof{
	font-size: 22px;
	text-align: center;
	margin-top: 0;
}
.p-sections .c-works__prof--area{
	font-size:16px;
}
.p-sections .c-works__lightbox{
	width: 100%;
	padding-top: 100%;
	position: relative;
	overflow: hidden;
	margin-top: .5em;
	border: 5px solid #eee;
}
.p-sections .c-works__lightbox img{
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	object-fit: cover;
}
@media screen and (min-width: 640px){
	.p-sections .c-works__item{
		width: calc( ( 100% - 20px ) / 2 );
		margin-right: 20px;
	}
	.p-sections .c-works__item:nth-of-type(2n){
			margin-right: 0;
		}
	.p-sections .c-works__item:last-of-type{
			margin-right: auto;
		}
	.p-sections .c-works__prof{
		text-align: left;
	}
}
@media screen and (min-width: 768px){
	.p-sections .c-works__medal{
		width: 85px;
		top: -15px;
		left: -20px;
	}
	.p-sections .c-works__item{
		width: calc( ( 100% - 120px ) / 4 );
		margin-right: 30px;
	}
    .p-sections .c-works__item:nth-of-type(2n){
        margin-right: 30px;
    }
    .p-sections .c-works__item:nth-of-type(4n){
        margin-right: 0;
    }
	.p-sections .c-works__item:last-of-type{
			margin-right: auto;
		}
}
/*==================
	pagenation
==================*/
.c-pagination{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin-top:2em;
}
.c-pagination .c-pagination__item{
	border: 1px solid #1664b2;
	color: #1664b2;
	background: #fff;
	padding: .5em 1em;
	font-size: 16px;
	margin: 5px;
}
.c-pagination .c-pagination__item--active{
	background: #1664b2;
	color: #fff;
}
/*==================
	page top btn
==================*/
.c-btn__top{
	z-index: 10;
	background: #1664b2;
	width: 80px;
	height: 80px;
	border-top-right-radius: 10px;
	border-bottom-left-radius: 10px;
	text-decoration: none;
	color: #fff;
	font-size: 14px;
	line-height: 1.4;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	position: fixed;
	right:10px;
	bottom: 10px;
}
.c-btn__top:before{
	content:"";
	width: 20px;
	height: 20px;
	background: url("../img/icon_arrow.svg") center top no-repeat;
	background-size: 20px auto;
}
/*==================
	footer
==================*/
.l-footer{
	background: #1664b2;
	width: 100%;
	padding: .5em;
	text-align: center;
	color: #fff;
	font-size: 14px;
	margin-top: 1em;
}