@charset "UTF-8";

*,
*:before,
*:after { box-sizing: border-box; }

html { font-size: 62.5%; }

body {
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	/*font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","ＭＳ Ｐゴシック","sans-serif";*/
	-webkit-text-size-adjust: 100%;
    word-wrap: break-word;
	line-height: 1.8;
	color: #333;
	background-color: #333;
	letter-spacing: .05em;
	font-size: 1.4rem;
}

img {
	border: none;
	width: 100%;
	height: auto;
	vertical-align: top;
}

em {
	font-style: normal;
}

body, div, p, img, ul, li, h1 ,h2, h3, h4, h5 {	margin: 0; padding: 0; }

h1 ,h2, h3, h4, h5 { font-weight: normal; }
a { display: block; transition: .3s; }
a img {	border: none; transition: .3s; }
a:hover img { opacity: .8; }
ul,li {	list-style: none; }

a:link,
a:visited,
a:active,
a:hover { color: #333; text-decoration: none; }

.txt-link { cursor: pointer; }
.txt-link span { padding-bottom: 1px; border-bottom: 1px solid #666; }
.txt-link:hover span { border-color: transparent; }

.ff-en {
	font-family: Garamond, Times New Roman, serif;
	font-size: 1.6rem;
    line-height: 1.5;
	letter-spacing: .02em;
}
.ff-en .ff-jp { font-size: 85%; font-style: normal; }
.ff-gothic,
#ambassador .letter-body .column p,
#about-topic .about-column {
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
}

.sp-display { display: none; }
.flex { display: flex; }
.link-right { text-align: right; }
.link-arrow  { display: inline-block; }
.link-arrow span { position: relative; display: block; padding-left: 12px; }
.link-arrow span:before {
	content: "";
	position: absolute;
	top: 6px;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 6px;
	border-color: transparent transparent transparent #333;
}
.link-arrow.txt-link span { padding-bottom: 0; }
.sec:not(:last-child) { margin-bottom: 60px; }
.pagetop { text-align: right; }

#wrap {
	width: 920px;
	margin: 35px auto 0;
	padding: 90px 0 0;
	background: #F0F0F0 url(../img/content_bg.jpg) 0 0 / 100% auto no-repeat;
}

header { padding: 0 40px 50px; }
header .main-ttl { width: 520px; padding: 100px 0 20px; }
header .main-summary { text-shadow: 0 0 5px rgba(255,255,255,1); font-size: 1.6rem; }
header .main-summary + .main-summary { margin: 10px 0 0 0; }
header .flex { margin-top: 30px; }
header .txt-box { flex: 1; }
header .lead-link,
header .sub-ttl {
	background: url(../img/引越後/icon-clover.png) 0 8px / 18px auto no-repeat;
	line-height: 1.5;
	padding-left: 25px;
	display: inline-block;
	margin-bottom: 10px;
	font-size: 2.2rem;
}
header .list-link { margin-left: 25px; }
header .list-link li:not(:last-child) { margin-bottom: 5px; }
header .list-link li a { font-size: 1.6rem; }
header .list-link + .sub-ttl,
header .list-link + .lead-link { margin-top: 20px; }
header .img-box { margin-left: 30px; font-size: 1.1rem; letter-spacing: 0; }
header .pamphlet { width: 160px; margin: 0 auto 10px; }
header .pamphlet img { box-shadow: 2px 2px 5px rgba(0,0,0,.2); }
header .link-right { font-size: 1.2rem; }

#ambassador { position: relative; padding-bottom: 30px; }
#ambassador:before,
#ambassador:after {
	content: "";
    background-image: linear-gradient(to right, #999, #999 2px, transparent 2px, transparent 5px);
    background-size: 6px 15px;
    background-repeat: repeat-x;
    position: absolute;
    top: -15px;
    left: 4%;
    width: 92%;
    height: 15px;
}
#ambassador:after { top: auto; bottom: -15px; }

#ambassador .main-ttl {
	background: url("../img/引越後/title_bg_sec.jpg") 0 0 / 100% auto no-repeat #f0f0f0;
	padding: 35px 0 28px;
	text-align: center;
	color: #777;
	line-height: 1.2;
	height: 100px;
}
#ambassador .introduction,
#ambassador .letter-body,
#ambassador .pagetop,
#about-topic { margin: 0 40px; }

#ambassador .introduction {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	padding-top: 30px;
	background: url("../img/引越後/logo.jpg") 100% 20px / 119px auto no-repeat;
}
#ambassador #ambassador-katayama .introduction {
	background: none;
	padding-top: 0;
}
#ambassador .introduction:after {
	content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 5px;
	background: #666;
}
#ambassador .introduction .name { font-size: 2rem; line-height: 1.4; width: calc(50% - 85px); }
#ambassador .introduction .ff-en { text-align: right; }
#ambassador .introduction .name span { display: block; font-size: 1.3rem; }
#ambassador .introduction img { width: 170px; margin: 0 20px; position: relative; z-index: 1; }

#ambassador .letter-body {
	display: flex;
	justify-content: space-between;
	padding: 30px 0;
}
#ambassador .letter-body { border-bottom: 1px solid #666; }
#ambassador #ambassador-masuura .letter-body { border: none; }
#ambassador .letter-body .column { width: 47%; }
#ambassador .letter-body .column p,
#about-topic .about-column p { font-size: 1.3rem; letter-spacing: 0; }
#ambassador .letter-body .column p:not(:last-child),
#about-topic .about-column p:not(:last-child) { margin-bottom: 10px; }
#ambassador .letter-body .column p a,
#about-topic .about-column p a { color: #777; display: inline-block; text-decoration: underline; }
#ambassador .letter-body .column p a:hover,
#about-topic .about-column p a:hover { text-decoration: none; }
#ambassador .letter-body .column p em { font-style: italic; }
#ambassador .letter-body .letter-en { line-height: 1.5; }
#ambassador .letter-body .letter-jp p:not(:last-child) { margin-bottom: 15px; }

.pagetop { text-align: right; }
.pagetop a { display: inline-block; border-bottom: 1px solid #333; }
.pagetop a:hover { border-color: transparent; }
.signature { text-align: right; }

#about-topic { padding: 40px 0; }
#about-topic .title { font-weight: bold; margin-bottom: 10px; line-height: 1.4; }
#about-topic .about-jp { margin-top: 30px; }

.mb0 { margin-bottom: 0px; }
.mb15 { margin-bottom: 15px; }
.mb20 { margin-bottom: 20px; }
.mb40 { margin-bottom: 40px; }
.mb60 { margin-bottom: 60px; }

.remodal {
	padding: 20px 5% 35px;
	max-width: 920px;
	background: url("../img/引越後/title_bg.jpg") 0 0 / 100% auto no-repeat #eaeaea;
}
.remodal-close { left: auto; right: -40px; }
.remodal-close:hover, .remodal-close:focus { color: #eee; }
.remodal-close:before { font-size: 45px; }
.modal-contents .modal-header { text-align: left; font-size: 2rem; margin-bottom: 40px; }
.modal-contents .modal-ttl { font-size: 3rem; line-height: 1.4; margin-bottom: 20px; }
.modal-contents .modal-ttl span { display: block; font-size: 50%; color: #999; line-height: 1; margin-bottom: 5px; }
.modal-contents .summary { text-align: left; font-size: 1.5rem; letter-spacing: 0; }
.modal-contents .summary p:not(:last-child) { margin-bottom: 15px; }
.modal-contents .author { text-align: right; font-size: 1.8rem; line-height: 1.4; margin-top: 20px; }
.modal-contents .author span { display: block; font-size: 70%; }

.modal-contents .coordinator:not(:last-child) {
	border-bottom: 1px solid #666;
	padding-bottom: 30px;
	margin-bottom: 30px;
}
.modal-contents .coordinator .txt-box { text-align: left; margin-left: 40px; flex: 1; }
.modal-contents .coordinator .title { font-size: 1.8rem; line-height: 1.5; }
.modal-contents .coordinator .name { font-size: 3rem; display: flex; align-items: center; line-height: 1.4; margin-top: 5px; }
.modal-contents .coordinator .name .ff-en { font-size: 60%; margin-left: 10px; color: #666; }
.modal-contents .coordinator .prof { font-size: 1.5rem; margin-top: 8px; letter-spacing: 0; color: #666; line-height: 1.5; }
.modal-contents .coordinator .introduction { font-size: 1.4rem; margin: 15px 0; letter-spacing: 0; text-align: justify; }
.modal-contents .coordinator .link-box a { display: inline; }
.modal-contents .coordinator .link-box .link { margin-top: 5px; }
.modal-contents .coordinator .link-box .link-ttl { font-size: 1.7rem; font-weight: 600; line-height: 1.5; }
.modal-contents .coordinator .link-box .link-info { color: #666; line-height: 1.5; margin-top: 5px; }

@media (max-width: 920px){
	#wrap { width: 100%; margin-top: 0; padding-top: 80px; }
	header .main-ttl { width: 70%; }
}
@media (max-width: 834px){
	.pc-display { display: none; }
	.sp-display { display: block; }
	header { padding-left: 5%; padding-right: 5%; }
	header .main-ttl { padding-top: 30px; }
	header .main-summary { font-size: 1.5rem; }
	header .main-summary.ff-en { font-size: 1.4rem; }
	header .flex { flex-direction: column; }
	header .img-box { margin: 30px 0; text-align: center; font-size: 1.3rem; }
	header .img-box a:nth-child(2) { margin: 10px 0; }
	header .lead-link,
	header .sub-ttl,
	header .list-link li:not(:last-child) { margin-bottom: 15px; }
	header .lead-link,
	header .sub-ttl { font-size: 1.8rem; background-position: 0 6px; }
	header .list-link li a { font-size: 1.4rem; }
	#ambassador .main-ttl { background-size: 150% auto; background-position: 95% 0; padding-top: 25px; }
	#ambassador .introduction,
	#ambassador .letter-body,
	#ambassador .pagetop,
	#about-topic { margin: 0 5%; }
	#ambassador .letter-body { flex-direction: column; }
	#ambassador .letter-body .column { width: 100%; }
	#ambassador .letter-body .letter-en { margin-bottom: 30px; }
	#ambassador .introduction { background-size: 70px auto; background-position: 100% 10px; }
	#ambassador .introduction img { width: 30%; margin: 0 15px; }
	#ambassador .introduction .name { width: 35%; line-height: 1.2; font-size: 1.5rem; }
	#ambassador .introduction .name span { margin-top: 5px; font-size: 1.1rem; }
	#ambassador .letter-body .column p:not(:last-child),
	#about-topic .about-column p:not(:last-child) { margin-bottom: 15px; }
	.remodal { max-width: 100%; padding: 60px 6% 30px; background-position: 100% 0; background-size: 140% auto; }
	.modal-contents .modal-header { font-size: 1.4rem; }
	.modal-contents .modal-ttl { font-size: 2.5rem; margin-bottom: 15px; }
	.modal-contents .summary { font-size: 1.3rem; }
	.modal-contents .sec:not(:last-child) { margin-bottom: 40px; }
	.modal-contents .flex { flex-direction: column; }
	.modal-contents .flex .img-box {
		width: 50%;
		margin: 0 auto;
		height: 230px;
		overflow: hidden;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.modal-contents .coordinator .txt-box { margin: 20px 0 0 0; }
	.modal-contents .coordinator .title,
	.modal-contents .coordinator .introduction,
	.modal-contents .coordinator .txt-box a { font-size: 1.3rem; }
	.modal-contents .coordinator .name { font-size: 2.4rem; }
	
	.remodal-close { left: 5px; right: auto; top: 5px; }
}
@media (max-width: 414px){
	header .main-ttl { width: 100%; padding: 0 0 20px 0; }
}