@charset "utf-8";

/* 共通 */

/* SP */
@media ( max-width: 765px) {
	/* related 
	--------------------------------------- */
	#rel-box {
	    border: solid 3px #ccc;
	    margin: 30px auto;
	    width: 100%;
	    padding: 26px 10px 6px;
	    font-size: 15px;
	}
	#rel-box h3 {
	    text-align: center;
	    color: #ffb900;
	    font-weight: 900;
	    font-size: 20px;
	    padding-bottom: 30px;
	}
	#rel-box .flex {
	}
	#rel-box .flex dl {
	    width: 100%;
	    border: solid 1px #ccc;
	    padding: 8px;
	    margin-bottom: 15px;
	}
	#rel-box .flex dl:nth-of-type(5n) {
	    margin-right: 0;
	}
	#rel-box dt a {
	    font-weight: 700;
	    line-height: 1.3;
	    display: block;
	    padding: 8px 0 8px 11px;
	    background: url(../images/base/arw-lnk.png) no-repeat left 2px top 13px;
	    background-size: 6px auto;
	}
	#rel-box dd {
	    /*border-top: 1px dotted #ccc;*/
	    line-height: 1.6;
	    font-size: 14px;
	}


	/* ref_links
	--------------------------------------- */
	.ref-links {
	    border-top: 2px solid #ccc;
	    padding-top: 20px;
	    margin-top: 40px;
	}
	.ref-links h3 {
	    /*text-align: center;*/
	    color: #ffb900;
	    font-weight: 900;
	    font-size: 18px;
	    padding-bottom: 10px;
	}
	.ref-links ul {
	    padding-bottom: 15px;
	}
	.ref-links li {
	    margin-bottom: 8px;
	    line-height: 1.6;
	    font-size: 16px;
	}
	.ref-links a {
	    text-decoration: underline;
	    /*font-weight: 700;*/
	    line-height: 1.5;
	    display: block;
	    padding: 8px 0 8px 11px;
	    background: url(../images/base/arw-lnk.png) no-repeat left 2px top 14px;
	    background-size: 6px auto;
	}
	.ref-links a:after {
	    display: inline-block;
	    content: '';
	    background: url(../images/base/arw-lnk.png) no-repeat;
	    background-size: contain;
	    width: 15px;
	    height: 15px;
	    margin-left: 5px;
	    position: relative;
	    top: 1px;
	}
	.ref-links a:hover {
	    text-decoration: none;
	}


	/* sum-box
	--------------------------------------- */
	.sum-box {
	    background: #e8f9ff;
	    padding: 20px 10px;
	    margin-top: 30px;
	    line-height: 1.6;
	    font-size: 16px;
	}
	.sum-box a {
	    color: #007aab;
	    text-decoration: underline;
	}


	/* no search
	--------------------------------------- */
	#nosrc {
		width: 100%;
		padding: 30px 10px;
		margin-bottom: 30px;
		border: solid 1px #bbb;
	}
	#nosrc .txt {
		line-height: 1.7;
	}
	#nosrcfrm {
		margin: 50px auto 30px auto;
		background-image: url(../images/base/mrk_src.png);
		background-repeat: no-repeat;
		background-position: center right 1%;
		background-size: 30px 23px;
		width: 80%;
	}

	#nosrcfrm input {
		border: none;
		width: 86%;
		border: solid 1px #898989;
		background: transparent;
		padding: 8px;
		background: #fff;
		font-size: 1.4em;
	}
	#nosrcfrm input, x:-moz-any-link {
		width: 86%;
	}
	#nosrcfrm input.screen-reader-text {
		opacity: 0;
		cursor: pointer;
		width: 10%;
	}
}

/* PC */
@media ( min-width: 766px) {
	/* related 
	--------------------------------------- */
	#rel-box {
	    border: solid 4px #ccc;
	    margin: 40px auto;
	    width: 100%;
	    padding: 36px 20px 16px;
	    font-size: 15px;
	}
	#rel-box h3 {
	    text-align: center;
	    color: #0078aa;
	    font-weight: 900;
	    font-size: 24px;
	    padding-bottom: 40px;
	}
	#rel-box .flex {
	    display: flex;
	    flex-wrap: wrap;
	    gap: 20px;
	}
	#rel-box .flex dl {
	    flex: 1 1 calc((100% - 60px) / 4); /* gapが3つ分あるので100%-60pxを4等分 */
	    border: solid 1px #ccc;
	    padding: 12px;
	    box-sizing: border-box;
	}
	#rel-box dt a {
	    font-weight: 700;
	    line-height: 1.3;
	    display: block;
	    padding: 8px 0 8px 11px;
	    background: url(../images/base/arw-lnk.png) no-repeat left 2px top 13px;
	    background-size: 6px auto;
	}
	#rel-box dd {
	    /*border-top: 1px dotted #ccc;*/
	    padding-top: 8px;
	    line-height: 1.6;
	    font-size: 14px;
	}


	/* ref_links
	--------------------------------------- */
	.ref-links {
	    border-top: 2px solid #ccc;
	    padding-top: 20px;
	    margin-top: 40px;
	}
	.ref-links h3 {
	    /*text-align: center;*/
	    color: #0078aa;
	    font-weight: 900;
	    font-size: 20px;
	    padding-bottom: 25px;
	}
	.ref-links ul {
	    padding-bottom: 40px;
	}
	.ref-links li {
	    margin-bottom: 8px;
	    line-height: 1.6;
	    font-size: 16px;
	}
	.ref-links a {
	    text-decoration: underline;
	    /*font-weight: 700;*/
	    line-height: 1.5;
	    display: block;
	    padding: 8px 0 8px 11px;
	    background: url(../images/base/arw-lnk.png) no-repeat left 2px top 13px;
	    background-size: 6px auto;
	}
	.ref-links a:after {
	    display: inline-block;
	    content: '';
	    background: url(../images/base/arw-lnk.png) no-repeat;
	    background-size: contain;
	    width: 15px;
	    height: 15px;
	    margin-left: 5px;
	    position: relative;
	    top: 1px;
	}
	.ref-links a:hover {
	    text-decoration: none;
	}


	/* sum-box
	--------------------------------------- */
	.sum-box {
	    background: #e8f9ff;
	    padding: 20px;
	    margin-top: 40px;
	    line-height: 1.7;
	    font-size: 16px;
	}
	.sum-box a {
	    color: #007aab;
	    text-decoration: underline;
	}


	/* no search
	--------------------------------------- */
	#nosrc {
	    width: 100%;
	    min-height: 300px;
	    padding: 50px 40px;
	    border: solid 1px #bbb;
	}
	#nosrcfrm {
	    margin: 70px auto 30px auto;
	    background-image: url(../images/base/mrk_src.png);
	    background-repeat: no-repeat;
	    background-position: center right;
	    background-size: 30px 23px;
	    width: 608px;
	}

	#nosrcfrm input {
	    border: none;
	    width: 570px;
	    border: solid 1px #898989;
	    background: transparent;
	    padding: 8px;
	    background: #fff;
	    font-size: 1.4em;
	}
	#nosrcfrm input, x:-moz-any-link {
	    width: 570px;
	}
	#nosrcfrm input.screen-reader-text {
	    opacity: 0;
	    cursor: pointer;
	    width: 30px;
	}
}