@charset “UTF-8”;

body.loansystem_top {
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: #333;
    margin: 0;
    padding: 78px 0 0;
    /**/
    color: #333;
    display: flex;
    flex-flow: column;
    font-family: Helvetica Neue, Arial, Hiragino Kaku Gothic ProN, Hiragino Sans, Meiryo, sans-serif;
    font-size: 16.5px;
    line-height: 1.6;
    min-height: 100vh;
    scroll-behavior: smooth;
    text-rendering: optimizeSpeed;
}

main#loansystem {
    flex: 1;
    padding: 0;
}


#loansystem.pc .wrapper {
    margin: 0 auto;
    max-width: 100%;
    width: 1150px;
}


#loansystem.pc .content-wrap {
    margin: auto;
    max-width: 1150px;
}

#loansystem .mv-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 620px;
  /*transition: transform 8s linear, opacity .6s;
  opacity: 0;*/
}


/**/
#loansystem .container2_box {
	background: #4d4d4d;
    margin-top: 172px;
	width: 100%;
}


#loansystem .container2 {
	width: 100%;
	color: #e37171;
	position: relative;
}

#loansystem .loansystem_title {
    display: flex;
    position: relative;
    justify-content: space-between;
    padding-left: 0;
    text-align: left;
    max-width: 1150px;
    margin: 0 auto 0 53.6%;
    transform: translateX(-210%);
    animation: slideIn-anim 1.2s ease-out forwards;
    animation-delay: 0.6s;/*開始字間*/
}

.system_tit1 {
	font-size: 15px;
	padding: 2px 20px;
	margin-top: 16px;
	background: #eb6819;
	color: #fff;
	border-radius: 5px;
	min-width: 110px;
}

/*================================*/

@keyframes slideIn-anim {
	20% {
		opacity: 0;
	}
	/*60% {
		transform: translateX(-45%);
	}
	75% {
		transform: translateX(-52%);
	}*/
	100% {
		opacity: 1;
		transform: translateX(-50%);
	}
}


/* ----------------------------
#mv-pc
.mv-img
.mv-img.mv-active
-----------------commonで設定  */

/* テキストのスタイル */
.mv-title {}

#loansystem .mv-title p {
	display: block;
	color: #000;
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans",Meiryo,sans-serif; 
	font-weight: bold;
	font-size: 18px;
	margin: 0;
	text-shadow: 0 0 3px #fff;
}

#loansystem h1 {
    /*color: #033775;*/
    font-family: 'Noto Serif JP', serif;
    font-size: 2.30em;
    color: #fff;
    font-weight: bold;
	line-height: 46px;
    /*padding: 10px 0 20px;
	transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s, opacity linear 0.7s;
	transition-delay: 0.25s;*/
}

#loansystem h1.h1_title {
    font-family: 'Noto Serif JP', serif;
    font-size: 2.30em;
    color: #fff;
    font-weight: bold;
	line-height: 46px;
	margin: 0 0 0 10px;
	min-width: 620px;
	line-height: 55px;
	padding: 0 0 0 10px;
    /*padding: 10px 0 20px;
	transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s, opacity linear 0.7s;
	transition-delay: 0.25s;*/
}


.shadow_title {
	text-shadow: 1px 2px 6px #fff; /*横に px・縦に px・ぼかし px・影の色#*/
}

#loansystem p.h1_title {
    /*color: #033775;*/
    font-family: 'Noto Serif JP', serif;
    font-size: 2.56em;
    color: #000;
    font-weight: bold;
    /*padding: 10px 0 20px;
	transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s, opacity linear 0.7s;
	transition-delay: 0.25s;*/
}

#loansystem　h1 span:first-child {
	transform: translate(0, 40px);
	transition-delay: 0.25s;
}

#loansystem h1 span:last-child {
	margin-top: 18px;
	transform: translate(0, 30px);
	transition-delay: 0.45s;
}


#loansystem h2 {
    color: #033775;
    font-weight: 300;
    margin: 0;
    padding: 0;
}



/* 下から上に移動しながらフェードイン */
.fadeInUp {
    opacity: 0;
    transform: translateY(100px);
    animation-name: fadeIn;
    animation-duration: 0.25s;
    animation-fill-mode: forwards;
}

.fadeInUp2 {
    opacity: 0;
    transform: translateY(100px);
    animation-name: fadeIn;
    animation-duration: 1s;
    animation-fill-mode: forwards;
}

.fadeInUp3 {
    opacity: 0;
    transform: translateY(100px);
    animation-name: fadeIn;
    animation-duration: 1.50s;
    animation-fill-mode: forwards;
}

/* 左から右に移動しながらフェードイン */
.fadeInRight {
    opacity: 0;
    transform: translateX(100px);
    animation-name: fadeIn;
    animation-duration: 45s;
    animation-fill-mode: forwards;
}
/* フェードインアニメーション */
@keyframes fadeIn {
    0% {
    }
    100% {
        opacity: 1;
        transform: translate(0);
    }
}

/*================================*/


.btn_svg_shadow {
filter: drop-shadow(10px 10px 0px 0px rgba(0, 0, 0, 0.4));
/*(左右の位置px 上下の位置px ぼかし具合px 色)*/
}

/**/


.indexSlide-up {
	transform: translate(0, -100%);
}

.indexSlide-left {
	transform: translate(-100%, 0);/*枠外*/
}
.indexShow {
	opacity: 1;
	transform: translate(0, 0);
}


/*——　文字の両脇にライン　——*/
.txt_catch {
  display: flex;
  align-items: center; /* 垂直中心 */
  justify-content: center; /* 水平中心 */
}
.itxt_catch:before, .itxt_catch:after {
  border-top: 1px solid;
  content: "";
  width: 3em; /* 線の長さ */
}
.itxt_catch:before {
  margin-right: 1em; /* 文字の右隣 */
}
.itxt_catch:after {
  margin-left: 1em; /* 文字の左隣 */
}

/*　左 */
.indexTwrap{
  position:relative;
}
.indexTwrap span{
  display: block;
  color: #fff;
  white-space: nowrap;
}
.indexTwrap span::before{
  content: "";
  display: inline-block;
  width: 3.0em;
  border-top: 1px solid;
  vertical-align: middle;
  margin: 0 0.2em;
  padding-bottom:4px;
}

/**/

.index-box__center_1080 {
    position: relative;
    padding-left: 30px;
    text-align: left;
    max-width: 1080px;
    margin: 0 auto;
}

.inbox__center_960 {
	position: relative;
    text-align: left;
    padding-right: 30px;
    max-width: 960px;
    margin: 0 auto;
}


/* ----------------------------
#mv-pc
.mv-img
.mv-img.mv-active
-----------------commonで設定  */

.mv01 {
	/*background-image: url(../../img/loansystem/system_mv_bg.jpg);*/
	/*background-image: url(../../img/loansystem/loansystem@2x.jpg);*/
	background-image: url(../../img/loansystem/loansystem.jpg);
	background-repeat: no-repeat;
	background-size: auto 100%;
}

#loansystem .system_mv {
	position:  absolute;        /* 位置指定 */
    bottom: 56px;                 /* 位置指定 */
    left: 0;                /* 位置指定 */
    z-index: -1;
    width: 100%;
}


.mv-copy {
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	background: rgba(0, 0, 0, .6);
	backdrop-filter: blur(2px);
	width: 100%;/*calc(40% + 10px);*/
	top: 39.6vh;
	height: 174px;
	padding: 30px 80px 30px 80px;
}

.mv-copy:not(.show) {
	width: 0;
	padding-left: 0;
	padding-right: 0;
}

.mv-copy > h3 {
	color: #fff;
	font-size: 1.26em;
	/*font-weight: 300;*/
	line-height: 1.8;
	margin: 0 30px 0 30px;
}

.mv-title {
	position:  relative;        /* 位置指定 */
    z-index: 201; 
	margin-top: 22vh;
}

.mv-title ul.flex_center {
	margin: 0 0 0 30vw;
}

.mv-title p {
	font-weight: bold;
	font-size: 18px;
	margin: 0;
}

/**/
ul.toptxt {
	/*margin: 0 0 0 740px;*/
	list-style:none;
	min-width: 750px;
}

@media (max-width: 1510px) {
	ul.toptxt {
		/*margin: -26px 0 0 740px;*/
		list-style:none;
	}
}
/**/
.mv-txt {
	font-size: 1.18em;
    color: #000;
    line-height: 35px;
    letter-spacing: .001em;
    font-weight: bold;
    text-align: left;
    margin: 163px 0 0 740px;
    min-width: 640px;
}

/*============================*/

/* 下から上に移動しながらフェードイン */
.fadeInUp {
    opacity: 0;
    transform: translateY(100px);
    animation-name: fadeIn;
    animation-duration: 1s;
    animation-fill-mode: forwards;
}
.fadeInUp2 {
    opacity: 0;
    transform: translateY(100px);
    animation-name: fadeIn;
    animation-duration: 0.25s;
    animation-fill-mode: forwards;
}
/* 左から右に移動しながらフェードイン */
.fadeInRight {
    opacity: 0;
    transform: translateX(100px);
    animation-name: fadeIn;
    animation-duration: 45s;
    animation-fill-mode: forwards;
}
/* フェードインアニメーション */
@keyframes fadeIn {
    0% {
    }
    100% {
        opacity: 1;
        transform: translate(0);
    }
}

/*============================*/

.mark_ISO {
	bottom: 12vh;
    width: 340px;
    position: absolute;
    right: 10%;
    z-index: 0;
}

.slash_area {
	margin: 48px 0 ;
	/*height: 100px;
	overflow:hidden;*/
}/* 親要素に挿入　*/

.slash_line {
	width:100%;
	height:1px;
	background:#999;
	transform:rotate(-50deg);
}

.select {
	background: #f0f4f7;
	padding: 25px;
}

.tele-rad .service {
	max-width: 1080px;
}

.service-desc {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.1em;
	margin: 30px auto;
}

.service-desc-name {
	color: #000;
	margin-bottom: 10px;
}

.service-desc .center,
.service-desc .hospital {
	background-position: center right 10px;
	background-repeat: no-repeat;
	border: 1px solid #033775;
	padding: 10px 30px;
	width: calc(48% - 130px);
	min-height: 150px;
	overflow: hidden;
}

.service-desc .center {
	background-image: url(../../img/index/teleRad-center.png);
}

.service-desc .hospital {
	background-image: url(../../img/index/teleRad-hospital.png);
}

.service-map {
	text-align: center;
	margin-bottom: 30px;
}

.tele-rad .select-btn {
	margin: 30px 0;
}

.member {
	background: url(../../img/index/member-pc-bg.jpg) no-repeat;
	background-size: cover;
	text-align: center;
	padding: 80px 20px;
}

.member-inner {
	background: #fff;
	max-width: 1030px;
}

.member .line {
	background: #888;
	width: 80%;
	height: 1px;
}

.member .line:not(.show) {
	width: 0;
}

.member-list {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	text-align: left;
	margin: 30px;
}

.member-list dl {
	width: 35%;
	min-width: 310px;
	padding: 10px;
}

.member-list dt {
	font-family: 'Times New Roman','Noto Serif KR', serif;
	font-size: 1.3em;
}

.member-list dt > span {
	display: inline-block;
	font-size: 1rem;
}

.member-list dd {
	font-size: .9em;
	/*margin-left: 75px;*/
}

.care {
	position: relative;
	padding: 90px 0 60px;
}

.care .content-wrap {
	display: flex;
	align-items: center;
	max-width: 100%;
	min-height: 537px;
	padding: 0;
	z-index: 1;
}

.care-inner {
	background: #fff;
	padding: 100px 50px;
}

.care-inner h2 {
	padding-bottom: 0;
}

.care-img {
	position: absolute;
	top: 90px;
	right: 0;
	z-index: -1;
}

/*topへボタン・・・・・・・・・・・・・・・・・*/
.totop_btn {
	/* position: fixed;
	 bottom: 5vw;
	 right: 1vw;
	 text-align: center;*/
	 position: fixed;
	 width: 60px;
	 height: 60px;
	 right: 3%;
	 bottom: 50px;
	 background: rgba(0, 0, 0, 0.3);
	 border-radius: 4px;
	 color: #fff;
	 font-weight: 600;
	 text-align: center;
	 padding: 5px;
	 transition: .3s;
	 z-index: 1000;
 }

.fa,.fas{
	font-weight: 900;
}
 .fa, .far, .fas {
	 font-family: Font Awesome\ 5 Free;
	 font-size: 16px;
 }
 .fa-angle-up:before {
	 content: "\f106";
 }
 .totop_btn  span {
	 display: block;
	 font-size: 15.5px;
	 letter-spacing: 0;
	 line-height: 1.3;
 }

/*=================================*/

/* 文字のせ */
#loansystem .bgimg_cover {
	position: relative;
}

#loansystem .cover_txt_atimg {
    position: absolute;
	top:50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);/*ベンダープレフィックス*/
	-webkit-transform: translate(-50%,-50%);/*ベンダープレフィックス*/
	transform: translate(-50%,-50%);/*センター寄せの修正*/	
	/*margin: 0!important;/*文字がずれている場合や*/
	/*padding: 0!important;/*文字が折り返される場合*/
}

#loansystem .cover_txt_atimg p span {
	word-break: keep-all;
}

.campaign_t_text {
	color: #033775;
	font-family: "Noto Serif JP", serif;
	font-size: 23px;
	font-weight: 700;
	letter-spacing: -0.01em;
	line-height: 0;
}


.campaign_text {
	font-size: 15px;
	line-height: 21px;
	margin: 0;
	padding-left: 20px;
}

.campaign_text_s {
	font-size: 14px;
	padding-left: 25px;
}


.jisseki dt {
  float: left;
  text-align: right;
  width: 250px;
  padding-right: 10px;
}

.jisseki_dd {
	text-align: left;
	padding-left: 10px;
	width: 460px;
}

.jisseki_number {
	color: #000;
	display: flex;
	align-items: center;
	font-weight: bold;
}

.jisseki_number:before {
	content: "";
	flex-grow: 1;
	border-top: 4px dotted #444;
	display: block;
    margin-right: .4em;
}


/*=================================
	PP SCREEN(Tele Version)
=================================*/

#ppscreen_tele figure.photo_size_h {
	height: 308px;
}

#ppscreen_tele figcaption.cap_txtbox {
	text-align: left;
	padding: 10px;
	margin: 0;
}

#ppscreen_tele figcaption p.capphototxt_1 {
	font-size: 15px;
	font-weight: bold;
	margin: 10px 0 0 0;
}
#ppscreen_tele figcaption p.capphototxt_2 {
	font-size: 13px;
	font-weight: normal;
	margin-top: 5px;
}


/*=================================
		modal
=================================*/

ul.img_modal {
 list-style: none;
 display: flex;
 justify-content: space-evenly;
}

ul.img_modal li{
  width: 30%;
  height: auto;
  text-align: center;
}

ul.img_modal li img{
  width: 100%;
  height: auto;
}

.modal__open:hover {
  cursor: pointer;
}

.modal {
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2;
}

.modal__bg {
  background: rgba(0, 0, 0, 0.8);
  height: 100vh;
  position: fixed;
  left: 0;
  width: 100%;
}

.modal__content {
	display: inline-block;
	font-size: 14px;
	background: white;
	padding: 32px;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 60%;
	max-width: 840px;
	margin-top: 40px;
}

.modal__content img{
  /*width: 70%;*/
  height: auto;
}

.modal__content p {
	display: inline-block;
	width:fit-content;
	text-align: left;
}

.modal .close__text {
  color: red;
  position: absolute;
  top: 5%;
  right: 5%;
}

/*================================*/


.ppsbox {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 30px;
  /* .listCard に flex を指定し、子要素を横並びにする。
  	wrapで折り返しできるようにする。
  	gapで子要素間にマージンを設ける。*/
}
.ppsbox .ppsbox_item {
  width: calc(100% / 3 - 20px);
  /* width: calc(最大横幅 / 一行に残したい個数 - gapで横に指定した数値);*/
}
.ppsbox .ppsbox_item a {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 10px 20px 20px;
  /* .ppsbox_item に flex を指定し子要素を横並びにしますが、
  column を指定して子要素に横幅を持たせ改行されないようにします。*/
}
.ppsbox img.pps_ifeatures {
  display: block;
  text-align: center;
  margin: auto auto 0;
  width: 360px;
  /*padding: 6px;*/
 /* box-shadow: 0 3px 5px rgb(0 0 0 / 50%);
  border-radius: 50px;*/
  /* margin-topに auto を指定することで下揃えになります。*/
}


#loansystem .link-btn--02 {
    background-color: #033775;
    border: 1px solid #033775;
    border-radius: 20px;
    box-sizing: border-box;
    color: #fff !important;
    display: inline-block;
    margin: 20px 0;
    width: 630px;
    padding: 0;
    position: relative;
    text-align: center;
}




/*=================================*/

@media (max-width: 1500px) {
    #loansystem .sp {
        display: block !important;
    }
}


/*=================================*/

@media (max-width: 1200px) {
    .sp {
        display: block !important;
    }
    main.spwid100vw {
    	flex: 1 0 auto;
    	width: 100vw;
    	background: #fff;
	}
}


/*==========================*/

@media (max-width: 850px) {
    #loansystem .sp {
        display: block !important;
    }

    body.loansystem_top {
	    padding: 29px 0 0 0;
	}

	main {
        flex: 1;
        width: 100vw;
        word-break: normal;
	    background: #ebebeb;
	    padding-bottom: 50px;
    }

	.service-inner {
		margin-bottom: 30px;
	}

	article.sp h2.loasys_h2 {
		font-size: 1.45em;
        padding: 15px 0 0;
	}

	p.h2p {
		text-align: center;
		margin: 0;
		padding: 0 0 15px 8px;
		color: #005082;
	    font-family: 'Noto Serif JP', serif;
	    font-size: 0.96em;
	    line-height: 21px;
	}

	td.td_system_type {
		vertical-align: top;
		padding: 30px 0 0 0;
	}

	td.td_main_txt {
		text-align: left;
		width: 76%;
        padding-left: 10px;
	}

	h4.orangeline_h4 {
		line-height: 23px;
		text-align: left;
		margin: 40px 0 30px;
		border-left: 6px solid;
		padding: 3px 10px 0;
		color: #FF6900;
	}

	h5.td_h5 {
		margin: 30px 0 10px 0;		
	}

	.sp li p.sys_sub_txt {
		font-size: 16px;
		line-height: 24px;
		padding-left: 20px;
	}

/* sp → linkbtn.css */
}